From a4fa0364d45926e2127dda7c42c6b141bb8c1402 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Sat, 26 Apr 2014 07:34:11 +0000 Subject: [PATCH] Redmine links not working with html escpaed characters (#16668). git-svn-id: http://svn.redmine.org/redmine/trunk@13106 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/helpers/application_helper.rb | 1 + test/unit/helpers/application_helper_test.rb | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index e46008d45..9cb5b9687 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -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) diff --git a/test/unit/helpers/application_helper_test.rb b/test/unit/helpers/application_helper_test.rb index 1b58e88d5..58b19f02d 100644 --- a/test/unit/helpers/application_helper_test.rb +++ b/test/unit/helpers/application_helper_test.rb @@ -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 "

#{link}

", textilizable('version:"Test & Show.txt"') + end + def test_link_to_issue_subject issue = Issue.generate!(:subject => "01234567890123456789") str = link_to_issue(issue, :truncate => 10)