diff --git a/lib/redcloth3.rb b/lib/redcloth3.rb index f6333b3fe..c91c61718 100644 --- a/lib/redcloth3.rb +++ b/lib/redcloth3.rb @@ -585,7 +585,7 @@ class RedCloth3 < String last_line = line_id end if line_id - last_line > 1 or line_id == lines.length - 1 - depth.delete_if do |v| + while v = depth.pop lines[last_line] << "\n\t#{ lT( v ) }l>" 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 4253b7152..548a378b5 100644 --- a/test/unit/lib/redmine/wiki_formatting/textile_formatter_test.rb +++ b/test/unit/lib/redmine/wiki_formatting/textile_formatter_test.rb @@ -110,6 +110,36 @@ class Redmine::WikiFormatting::TextileFormatterTest < ActionView::TestCase ) end + def test_nested_lists + raw = <<-RAW +# Item 1 +# Item 2 +** Item 2a +** Item 2b +# Item 3 +** Item 3a +RAW + + expected = <<-EXPECTED +