diff options
-rw-r--r-- | lib/redcloth.rb | 2 | ||||
-rw-r--r-- | test/unit/helpers/application_helper_test.rb | 2 |
2 files changed, 3 insertions, 1 deletions
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 "<pre>\nline 1\nline2</pre>" => "<pre>\nline 1\nline2</pre>", "<pre><code>\nline 1\nline2</code></pre>" => "<pre><code>\nline 1\nline2</code></pre>", "<pre><div>content</div></pre>" => "<pre><div>content</div></pre>", + "HTML comment: <!-- no comments -->" => "<p>HTML comment: <!-- no comments --></p>", + "<!-- opening comment" => "<p><!-- opening comment</p>" } to_test.each { |text, result| assert_equal result, textilizable(text) } end |