mirror of
https://github.com/redmine/redmine.git
synced 2025-11-03 11:56:18 +01:00
Image filename for HDPI monitors (image@2x.jpg) are misrecognized as email address (#27968).
Patch by Marius BALTEANU. git-svn-id: http://svn.redmine.org/redmine/trunk@17394 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -184,6 +184,10 @@ module Redmine
|
|||||||
html.gsub!(%r{\battachment:<a(\sclass="email")? href="mailto:(.*?)">(.*?)</a>}) do
|
html.gsub!(%r{\battachment:<a(\sclass="email")? href="mailto:(.*?)">(.*?)</a>}) do
|
||||||
"attachment:#{$2}"
|
"attachment:#{$2}"
|
||||||
end
|
end
|
||||||
|
# restore hires images which are misrecognized as email address eg. [printscreen@2x.png]
|
||||||
|
html.gsub!(%r{<a(\sclass="email")? href="mailto:[^"]+@\dx\.(bmp|gif|jpg|jpe|jpeg|png)">(.*?)</a>}) do
|
||||||
|
"#{$3}"
|
||||||
|
end
|
||||||
html
|
html
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -699,13 +699,13 @@ RAW
|
|||||||
|
|
||||||
with_settings :text_formatting => 'textile' do
|
with_settings :text_formatting => 'textile' do
|
||||||
raw = "attachment:image@2x.png should not be parsed in image@2x.png"
|
raw = "attachment:image@2x.png should not be parsed in image@2x.png"
|
||||||
assert_match %r{<p><a class="attachment" href="/attachments/#{attachment.id}/image@2x.png">image@2x.png</a> should not be parsed in <a class="email" href="mailto:image@2x.png">image@2x.png</a></p>},
|
assert_match %r{<p><a class="attachment" href="/attachments/#{attachment.id}/image@2x.png">image@2x.png</a> should not be parsed in image@2x.png</p>},
|
||||||
textilizable(raw, :attachments => [attachment])
|
textilizable(raw, :attachments => [attachment])
|
||||||
end
|
end
|
||||||
|
|
||||||
with_settings :text_formatting => 'markdown' do
|
with_settings :text_formatting => 'markdown' do
|
||||||
raw = "attachment:image@2x.png should not be parsed in image@2x.png"
|
raw = "attachment:image@2x.png should not be parsed in image@2x.png"
|
||||||
assert_match %r{<p><a class="attachment" href="/attachments/#{attachment.id}/image@2x.png">image@2x.png</a> should not be parsed in <a href="mailto:image@2x.png">image@2x.png</a></p>} ,
|
assert_match %r{<p><a class="attachment" href="/attachments/#{attachment.id}/image@2x.png">image@2x.png</a> should not be parsed in image@2x.png</p>} ,
|
||||||
textilizable(raw, :attachments => [attachment])
|
textilizable(raw, :attachments => [attachment])
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -77,6 +77,18 @@ EXPECTED
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_hires_images_should_not_be_recognized_as_email_addresses
|
||||||
|
raw = <<-DIFF
|
||||||
|
Image: logo@2x.png
|
||||||
|
DIFF
|
||||||
|
|
||||||
|
expected = <<-EXPECTED
|
||||||
|
<p>Image: logo@2x.png</p>
|
||||||
|
EXPECTED
|
||||||
|
|
||||||
|
assert_equal expected.gsub(%r{[\r\n\t]}, ''), Redmine::WikiFormatting::NullFormatter::Formatter.new(raw).to_html.gsub(%r{[\r\n\t]}, '')
|
||||||
|
end
|
||||||
|
|
||||||
def test_cache_key_for_saved_object_should_no_be_nil
|
def test_cache_key_for_saved_object_should_no_be_nil
|
||||||
assert_not_nil Redmine::WikiFormatting.cache_key_for('textile', 'Text', Issue.find(1), :description)
|
assert_not_nil Redmine::WikiFormatting.cache_key_for('textile', 'Text', Issue.find(1), :description)
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user