]> source.dussan.org Git - redmine.git/commitdiff
Merged r9822 from trunk.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 17 Jun 2012 08:54:12 +0000 (08:54 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 17 Jun 2012 08:54:12 +0000 (08:54 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/1.4-stable@9842 e93f8b46-1217-0410-a6f0-8f06a7374b81

doc/CHANGELOG
lib/redmine/wiki_formatting/textile/formatter.rb
test/unit/lib/redmine/wiki_formatting/textile_formatter_test.rb

index 516bd71590723a92cd16c2a9eab7905ca3d93c27..091db352a127cf40ce4f17155969259f2e09b028 100644 (file)
@@ -8,6 +8,7 @@ http://www.redmine.org/
 
 * Defect #11061: Cannot choose commit versions to view differences in Git/Mercurial repository view
 * Defect #11112: REST API - custom fields in POST/PUT ignored for time_entries
+* Defect #11133: Wiki-page section edit link can point to incorrect section
 * Feature #6597: Configurable session lifetime and timeout
 * Patch #11113: Small glitch in German localization
 
index 5f0c1cb3eb6e5c337d3749c0f6fec4af4d516b65..47b5a0a34b23d4916af32c11d8753cb148f89c6b 100644 (file)
@@ -69,7 +69,7 @@ module Redmine
           l = 1
           started = false
           ended = false
-          text.scan(/(((?:.*?)(\A|\r?\n\r?\n))(h(\d+)(#{A}#{C})\.(?::(\S+))? (.*?)$)|.*)/m).each do |all, content, lf, heading, level|
+          text.scan(/(((?:.*?)(\A|\r?\n\s*\r?\n))(h(\d+)(#{A}#{C})\.(?::(\S+))? (.*?)$)|.*)/m).each do |all, content, lf, heading, level|
             if heading.nil?
               if ended
                 after << all
index 548a378b56ee129a2704360c2e9482cad5434df4..3f0b0834b48044677782b0a514e84b6e0765622a 100644 (file)
@@ -394,6 +394,31 @@ Nulla nunc nisi, egestas in ornare vel, posuere ac libero."]
       @formatter.new(text).update_section(3, replacement)
   end
 
+  def test_get_section_should_support_lines_with_spaces_before_heading
+    # the lines after Content 2 and Heading 4 contain a space
+    text = <<-STR
+h1. Heading 1
+
+Content 1
+
+h1. Heading 2
+
+Content 2
+h1. Heading 3
+
+Content 3
+
+h1. Heading 4
+Content 4
+STR
+
+    [1, 2, 3, 4].each do |index|
+      assert_match /\Ah1. Heading #{index}.+Content #{index}/m, @formatter.new(text).get_section(index).first
+    end
+  end
+
   private
 
   def assert_html_output(to_test, expect_paragraph = true)