From e9a0f3960d560ea5f98ecd6ccddb635b4dc029bb Mon Sep 17 00:00:00 2001 From: Daniel Silverstone Date: Sun, 22 Jul 2012 11:58:28 +0100 Subject: DOMNode: Clear string pointers when we unref them --- src/core/node.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'src/core') diff --git a/src/core/node.c b/src/core/node.c index 9ddac0c..ca8fd72 100644 --- a/src/core/node.c +++ b/src/core/node.c @@ -231,11 +231,15 @@ void _dom_node_finalise(dom_node_internal *node) } node->user_data = NULL; - if (node->prefix != NULL) + if (node->prefix != NULL) { dom_string_unref(node->prefix); + node->prefix = NULL; + } - if (node->namespace != NULL) + if (node->namespace != NULL) { dom_string_unref(node->namespace); + node->namespace = NULL; + } /* Destroy all the child nodes of this node */ p = node->first_child; @@ -253,11 +257,15 @@ void _dom_node_finalise(dom_node_internal *node) node->first_child = NULL; node->parent = NULL; - if (node->value != NULL) + if (node->value != NULL) { dom_string_unref(node->value); + node->value = NULL; + } - if (node->name != NULL) + if (node->name != NULL) { dom_string_unref(node->name); + node->name = NULL; + } /* If the node has no owner document, we need not to finalise its * dom_event_target_internal structure. -- cgit v1.2.3