diff options
author | Fedor Sheremetyev <sheremetyev@gmail.com> | 2023-07-10 10:09:58 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-10 11:09:58 +0200 |
commit | ddbeb9c9d87b6e938eac09bc0ee4f354c4a552f2 (patch) | |
tree | 368dce508a0b6afd3989ddd946f5e2b8cbb87f17 /src/construct | |
parent | 24d78c3420980f3e56fc420f8efc7e601b144ee7 (diff) | |
download | markdown-rs-ddbeb9c9d87b6e938eac09bc0ee4f354c4a552f2.tar.gz markdown-rs-ddbeb9c9d87b6e938eac09bc0ee4f354c4a552f2.tar.bz2 markdown-rs-ddbeb9c9d87b6e938eac09bc0ee4f354c4a552f2.zip |
Fix parsing of nested links
Enter event for `LabelText` should be inserted before existing events at the index in order
to have correct nesting. Otherwise nested elements could have Enter event first and that
would result in incorrect nesting in the tree when converting to AST.
Closes GH-73.
Closes GH-50.
Diffstat (limited to 'src/construct')
-rw-r--r-- | src/construct/label_end.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/construct/label_end.rs b/src/construct/label_end.rs index c7cca66..8898b88 100644 --- a/src/construct/label_end.rs +++ b/src/construct/label_end.rs @@ -752,7 +752,7 @@ fn inject_labels(tokenizer: &mut Tokenizer, labels: &[Label]) { // Though: if this was what looked like a footnote, but didn’t match, // it’s a link instead, and we need to inject the `^`. if label.start.1 != label.end.0 || !caret.is_empty() { - tokenizer.map.add( + tokenizer.map.add_before( label.start.1 + 1, 0, vec![Event { |