diff --git a/lib/redcloth.rb b/lib/redcloth.rb index 7e0c71839..7729ced46 100644 --- a/lib/redcloth.rb +++ b/lib/redcloth.rb @@ -1134,7 +1134,7 @@ class RedCloth < String ALLOWED_TAGS = %w(redpre pre code) def escape_html_tags(text) - text.gsub!(%r{<(\/?(\w+)[^>\n]*)(>?)}) {|m| ALLOWED_TAGS.include?($2) ? "<#{$1}#{$3}" : "<#{$1}#{'>' if $3}" } + text.gsub!(%r{<(\/?([!\w]+)[^<>\n]*)(>?)}) {|m| ALLOWED_TAGS.include?($2) ? "<#{$1}#{$3}" : "<#{$1}#{'>' unless $3.blank?}" } end end diff --git a/test/unit/helpers/application_helper_test.rb b/test/unit/helpers/application_helper_test.rb index 182cd3aec..e8b5883ce 100644 --- a/test/unit/helpers/application_helper_test.rb +++ b/test/unit/helpers/application_helper_test.rb @@ -141,6 +141,8 @@ class ApplicationHelperTest < HelperTestCase "
\nline 1\nline2" => "
\nline 1\nline2", "
\nline 1\nline2
" => "\nline 1\nline2
",
"" => "content
<div>content</div>", + "HTML comment: " => "
HTML comment: <!-- no comments -->
", + "