Fixed: Wiki section edit escapes pre tags inside pre blocks (#9673).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7976 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
c5cabfe106
commit
d66c8faa9b
|
@ -1058,7 +1058,7 @@ class RedCloth3 < String
|
|||
end
|
||||
end
|
||||
|
||||
def rip_offtags( text, escape_aftertag=true )
|
||||
def rip_offtags( text, escape_aftertag=true, escape_line=true )
|
||||
if text =~ /<.*>/
|
||||
## strip and encode <pre> content
|
||||
codepre, used_offtags = 0, {}
|
||||
|
@ -1068,7 +1068,7 @@ class RedCloth3 < String
|
|||
codepre += 1
|
||||
used_offtags[offtag] = true
|
||||
if codepre - used_offtags.length > 0
|
||||
htmlesc( line, :NoQuotes )
|
||||
htmlesc( line, :NoQuotes ) if escape_line
|
||||
@pre_list.last << line
|
||||
line = ""
|
||||
else
|
||||
|
@ -1086,7 +1086,7 @@ class RedCloth3 < String
|
|||
end
|
||||
elsif $1 and codepre > 0
|
||||
if codepre - used_offtags.length > 0
|
||||
htmlesc( line, :NoQuotes )
|
||||
htmlesc( line, :NoQuotes ) if escape_line
|
||||
@pre_list.last << line
|
||||
line = ""
|
||||
end
|
||||
|
|
|
@ -57,7 +57,7 @@ module Redmine
|
|||
def extract_sections(index)
|
||||
@pre_list = []
|
||||
text = self.dup
|
||||
rip_offtags text, false
|
||||
rip_offtags text, false, false
|
||||
before = ''
|
||||
s = ''
|
||||
after = ''
|
||||
|
|
|
@ -284,6 +284,11 @@ Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas sed libero.",
|
|||
end
|
||||
</code></pre>
|
||||
|
||||
<pre><code><pre><code class=\"ruby\">
|
||||
Place your code here.
|
||||
</code></pre>
|
||||
</code></pre>
|
||||
|
||||
Morbi facilisis accumsan orci non pharetra.
|
||||
|
||||
<pre>
|
||||
|
|
Loading…
Reference in New Issue