]> source.dussan.org Git - redmine.git/commitdiff
Redmine links not working with html escpaed characters (#16668).
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 26 Apr 2014 07:34:11 +0000 (07:34 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 26 Apr 2014 07:34:11 +0000 (07:34 +0000)
git-svn-id: http://svn.redmine.org/redmine/trunk@13106 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/helpers/application_helper.rb
test/unit/helpers/application_helper_test.rb

index e46008d456b3e94a3f21dd35cf6347dff2faf481..9cb5b9687e426d10411958c3198ebb88ab53a995 100644 (file)
@@ -822,6 +822,7 @@ module ApplicationHelper
         elsif sep == ':'
           # removes the double quotes if any
           name = identifier.gsub(%r{^"(.*)"$}, "\\1")
+          name = CGI.unescapeHTML(name)
           case prefix
           when 'document'
             if project && document = project.documents.visible.find_by_title(name)
index 1b58e88d537ef1da3748a843132237a7a72ef753..58b19f02dcfc1aab93c458fe6f722e1306a95208 100644 (file)
@@ -436,6 +436,14 @@ RAW
     end
   end
 
+  def test_redmine_links_by_name_should_work_with_html_escaped_characters
+    v = Version.generate!(:name => "Test & Show.txt", :project_id => 1)
+    link = link_to("Test & Show.txt", "/versions/#{v.id}", :class => "version")
+
+    @project = v.project
+    assert_equal "<p>#{link}</p>", textilizable('version:"Test & Show.txt"')
+  end
+
   def test_link_to_issue_subject
     issue = Issue.generate!(:subject => "01234567890123456789")
     str = link_to_issue(issue, :truncate => 10)