diff options
-rw-r--r-- | markdown/preprocessors.py | 7 | ||||
-rw-r--r-- | tests/extensions/extra/raw-html.html | 7 | ||||
-rw-r--r-- | tests/extensions/extra/raw-html.txt | 6 |
3 files changed, 16 insertions, 4 deletions
diff --git a/markdown/preprocessors.py b/markdown/preprocessors.py index 7fd38d3..7ea4fcf 100644 --- a/markdown/preprocessors.py +++ b/markdown/preprocessors.py @@ -178,10 +178,11 @@ class HtmlBlockPreprocessor(Preprocessor): else: # raw html if len(items) - right_listindex <= 1: # last element right_listindex -= 1 - offset = 1 if i == right_listindex else 0 + if right_listindex <= i: + right_listindex = i + 1 placeholder = self.markdown.htmlStash.store('\n\n'.join( - items[i:right_listindex + offset])) - del items[i:right_listindex + offset] + items[i:right_listindex])) + del items[i:right_listindex] items.insert(i, placeholder) return items diff --git a/tests/extensions/extra/raw-html.html b/tests/extensions/extra/raw-html.html index 7acb2ee..9c0222f 100644 --- a/tests/extensions/extra/raw-html.html +++ b/tests/extensions/extra/raw-html.html @@ -41,4 +41,9 @@ Raw html blocks may also be nested. <p>Markdown is <em>still</em> active here.</p> </div> -<p>Markdown is <em>active again</em> here.</p>
\ No newline at end of file +<p>Markdown is <em>active again</em> here.</p> +<div> +<p>foo bar</p> +<p><em>bar</em> +</p> +</div>
\ No newline at end of file diff --git a/tests/extensions/extra/raw-html.txt b/tests/extensions/extra/raw-html.txt index 72f530b..da24af0 100644 --- a/tests/extensions/extra/raw-html.txt +++ b/tests/extensions/extra/raw-html.txt @@ -65,3 +65,9 @@ Markdown is *still* active here. </div> Markdown is *active again* here. + +<div markdown=1> +foo bar + +<em>bar</em> +</div> |