From 7db930f1b44b0db404aff931b744b566256a3602 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Sat, 12 Mar 2011 18:28:30 +0000 Subject: [PATCH] Fixed: Wiki headings containing backslash followed by a digit are not displayed correctly (#7846). Contributed by Etienne Massip. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5100 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- lib/redcloth3.rb | 6 ++++-- .../wiki_formatting/textile_formatter_test.rb | 12 +++++++++--- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/lib/redcloth3.rb b/lib/redcloth3.rb index 7c9df0727..848aa7042 100644 --- a/lib/redcloth3.rb +++ b/lib/redcloth3.rb @@ -707,11 +707,13 @@ class RedCloth3 < String atts = pba( atts ) # pass to prefix handler + replacement = nil if respond_to? "textile_#{ tag }", true - text.gsub!( $&, method( "textile_#{ tag }" ).call( tag, atts, cite, content ) ) + replacement = method( "textile_#{ tag }" ).call( tag, atts, cite, content ) elsif respond_to? "textile_#{ tagpre }_", true - text.gsub!( $&, method( "textile_#{ tagpre }_" ).call( tagpre, num, atts, cite, content ) ) + replacement = method( "textile_#{ tagpre }_" ).call( tagpre, num, atts, cite, content ) end + text.gsub!( $& ) { replacement } if replacement end end diff --git a/test/unit/lib/redmine/wiki_formatting/textile_formatter_test.rb b/test/unit/lib/redmine/wiki_formatting/textile_formatter_test.rb index 72cb9dc55..69b410e83 100644 --- a/test/unit/lib/redmine/wiki_formatting/textile_formatter_test.rb +++ b/test/unit/lib/redmine/wiki_formatting/textile_formatter_test.rb @@ -64,12 +64,18 @@ class Redmine::WikiFormatting::TextileFormatterTest < HelperTestCase '@@' => '<Location /redmine>' ) end - + def test_escaping assert_html_output( 'this is a