diff options
-rw-r--r-- | src/treebuilder/treebuilder.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/treebuilder/treebuilder.c b/src/treebuilder/treebuilder.c index b67aa53..19f4429 100644 --- a/src/treebuilder/treebuilder.c +++ b/src/treebuilder/treebuilder.c @@ -1391,15 +1391,21 @@ hubbub_error formatting_list_remove(hubbub_treebuilder *treebuilder, *node = entry->details.node; *stack_index = entry->stack_index; - if (entry->prev == NULL) + if (entry->prev == NULL) { + assert(treebuilder->context.formatting_list == entry); treebuilder->context.formatting_list = entry->next; - else + } else { + assert(treebuilder->context.formatting_list != entry); entry->prev->next = entry->next; + } - if (entry->next == NULL) + if (entry->next == NULL) { + assert(treebuilder->context.formatting_list_end == entry); treebuilder->context.formatting_list_end = entry->prev; - else + } else { + assert(treebuilder->context.formatting_list_end != entry); entry->next->prev = entry->prev; + } free(entry); |