diff options
-rw-r--r-- | rest/rest-xml-parser.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/rest/rest-xml-parser.c b/rest/rest-xml-parser.c index 107712d..597d0f0 100644 --- a/rest/rest-xml-parser.c +++ b/rest/rest-xml-parser.c @@ -137,9 +137,11 @@ rest_xml_node_free (RestXmlNode *node) { GList *l; - for (l = g_hash_table_get_values (node->children); l; l = l->next) + l = g_hash_table_get_values (node->children); + while (l) { rest_xml_node_free ((RestXmlNode *)l->data); + l = g_list_delete_link (l, l); } g_hash_table_unref (node->children); |