From 6fdd8d6c69c7823c23eac2928a480ea44270dafd Mon Sep 17 00:00:00 2001 From: François Revel Date: Sat, 7 Apr 2012 00:23:10 +0000 Subject: Fix a crash on http://gopher.floodgap.com/overbite/ _dom_element_attr_list_node_clone() forgot to init the list entry. Added some asserts. svn path=/trunk/libdom/; revision=13811 --- src/core/element.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/core/element.c b/src/core/element.c index a792ae5..8908968 100644 --- a/src/core/element.c +++ b/src/core/element.c @@ -182,6 +182,8 @@ static void _dom_element_attr_list_node_unlink(dom_attr_list *n) static void _dom_element_attr_list_insert(dom_attr_list *list, dom_attr_list *new_attr) { + assert(list != NULL); + assert(new_attr != NULL); list_append(&list->list, &new_attr->list); } @@ -213,6 +215,7 @@ static dom_attr_list * _dom_element_attr_list_find_by_name( } attr = _dom_element_attr_list_next(attr); + assert(attr != NULL); } while (attr != list); return NULL; @@ -398,6 +401,8 @@ static dom_attr_list * _dom_element_attr_list_node_clone(dom_attr_list *n) if (new_list_node == NULL) return NULL; + list_init(&new_list_node->list); + new_list_node->name = NULL; new_list_node->namespace = NULL; -- cgit v1.2.3