summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Wellnhofer <wellnhofer@aevum.de>2014-11-29 18:37:48 +0100
committerNick Wellnhofer <wellnhofer@aevum.de>2014-11-29 21:49:14 +0100
commitdecf525cf60f8db8ffe1ee525a328b488d16f35b (patch)
tree554bc133ab6687a50805eff6d7f3b963e3a9f202 /src
parentd8226ea031f61572f397af0735ec32c6ab0a231a (diff)
Fix prev pointer of emph->first_child
Diffstat (limited to 'src')
-rw-r--r--src/inlines.c1
-rw-r--r--src/node.c5
2 files changed, 6 insertions, 0 deletions
diff --git a/src/inlines.c b/src/inlines.c
index e08b757..5a8024d 100644
--- a/src/inlines.c
+++ b/src/inlines.c
@@ -431,6 +431,7 @@ static void process_emphasis(subject *subj, delimiter_stack *stack_bottom)
// fix tree structure
tmp = emph->first_child;
+ tmp->prev = NULL;
while (tmp->next != NULL && tmp->next != closer->first_inline) {
tmp->parent = emph;
tmp = tmp->next;
diff --git a/src/node.c b/src/node.c
index 4054881..fd92fdc 100644
--- a/src/node.c
+++ b/src/node.c
@@ -607,6 +607,11 @@ cmark_node_check(cmark_node *node, FILE *out)
cur = node;
while (true) {
if (cur->first_child) {
+ if (cur->first_child->prev != NULL) {
+ S_print_error(out, cur->first_child, "prev");
+ cur->first_child->prev = NULL;
+ ++errors;
+ }
if (cur->first_child->parent != cur) {
S_print_error(out, cur->first_child, "parent");
cur->first_child->parent = cur;