summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/treebuilder/treebuilder.c14
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);