diff options
author | Dmitry Shachnev <mitya57@gmail.com> | 2016-06-13 18:19:31 +0300 |
---|---|---|
committer | Dmitry Shachnev <mitya57@gmail.com> | 2016-06-13 18:19:31 +0300 |
commit | 4fc04c6477914e26d8164b65238435c891f00108 (patch) | |
tree | 8c4e56ce5b37d24dd64d44da18276b61dd0da49d | |
parent | a96fee0591de5f3b628503591d1cad9d23d26140 (diff) | |
download | markdown-4fc04c6477914e26d8164b65238435c891f00108.tar.gz markdown-4fc04c6477914e26d8164b65238435c891f00108.tar.bz2 markdown-4fc04c6477914e26d8164b65238435c891f00108.zip |
Fix another issue with attribute lists (with multiple ‘=’ signs)
-rw-r--r-- | markdown/extensions/attr_list.py | 6 | ||||
-rw-r--r-- | tests/extensions/attr_list.html | 1 | ||||
-rw-r--r-- | tests/extensions/attr_list.txt | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/markdown/extensions/attr_list.py b/markdown/extensions/attr_list.py index de39944..ccc5b2f 100644 --- a/markdown/extensions/attr_list.py +++ b/markdown/extensions/attr_list.py @@ -32,17 +32,17 @@ except AttributeError: # pragma: no cover def _handle_double_quote(s, t): - k, v = t.split('=') + k, v = t.split('=', 1) return k, v.strip('"') def _handle_single_quote(s, t): - k, v = t.split('=') + k, v = t.split('=', 1) return k, v.strip("'") def _handle_key_value(s, t): - return t.split('=') + return t.split('=', 1) def _handle_word(s, t): diff --git a/tests/extensions/attr_list.html b/tests/extensions/attr_list.html index 93a862f..29e400d 100644 --- a/tests/extensions/attr_list.html +++ b/tests/extensions/attr_list.html @@ -64,5 +64,6 @@ And a <strong class="nest">nested <a class="linky2" href="http://example.com" ti <p>No <em>key or value</em></p> <p><em>Weirdness</em></p> <p><em>More weirdness</em></p> +<p>This should not cause a <em foo="a=b">crash</em></p> <p>Attr_lists do not contain <em>newlines</em>{ foo=bar key=value }</p>
\ No newline at end of file diff --git a/tests/extensions/attr_list.txt b/tests/extensions/attr_list.txt index 603b611..98f1cc7 100644 --- a/tests/extensions/attr_list.txt +++ b/tests/extensions/attr_list.txt @@ -88,5 +88,7 @@ No *key or value*{ = } *More weirdness*{ === } +This should not cause a *crash*{ foo=a=b } + Attr_lists do not contain *newlines*{ foo=bar key=value } |