From 79e5d74377af803222fb9c84bd97d624aafec39b Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Thu, 18 Sep 2008 21:55:51 +0000 Subject: Ensure we unref collect node if it still exists when we come to destroy the treebuilder (this can occur if EOF is encountered when in generic_rcdata/script_collect modes). Note that the spec has since changed here, so we'll need to resync, anyway. This is simply to ensure the testsuite passes once more. svn path=/trunk/hubbub/; revision=5374 --- src/treebuilder/treebuilder.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/treebuilder/treebuilder.c b/src/treebuilder/treebuilder.c index f926d9e..3ffe99f 100644 --- a/src/treebuilder/treebuilder.c +++ b/src/treebuilder/treebuilder.c @@ -182,6 +182,12 @@ void hubbub_treebuilder_destroy(hubbub_treebuilder *treebuilder) treebuilder->context.document); } + if (treebuilder->context.collect.node != NULL) { + treebuilder->tree_handler->unref_node( + treebuilder->tree_handler->ctx, + treebuilder->context.collect.node); + } + for (uint32_t n = treebuilder->context.current_node; n > 0; n--) { treebuilder->tree_handler->unref_node( -- cgit v1.2.3