summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2014-11-10 19:40:20 +0000
committerVincent Sanders <vince@kyllikki.org>2014-11-10 19:40:20 +0000
commit345cfc4ec8085fb4b14b90e305788a60ffa106e4 (patch)
treeae32bf5bd4b000f0b803fd82ecf91082deb75333
parent44cfe7459c8d9bc883b39fbdc18a8ee7685bebde (diff)
downloadnetsurf-345cfc4ec8085fb4b14b90e305788a60ffa106e4.tar.gz
netsurf-345cfc4ec8085fb4b14b90e305788a60ffa106e4.tar.bz2
address even more potential leaks on error path in box_select (coverity 1109875)
-rw-r--r--render/box_construct.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/render/box_construct.c b/render/box_construct.c
index 889865cb2..0e4940683 100644
--- a/render/box_construct.c
+++ b/render/box_construct.c
@@ -2597,7 +2597,8 @@ bool box_select(BOX_SPECIAL_PARAMS)
if (box_select_add_option(gadget, c) == false) {
dom_node_unref(c);
- goto no_memory;
+ form_free_control(gadget);
+ return false;
}
} else if (dom_string_caseless_lwc_isequal(name,
corestring_lwc_optgroup)) {
@@ -2650,6 +2651,7 @@ bool box_select(BOX_SPECIAL_PARAMS)
err = dom_node_get_next_sibling(c, &next);
if (err != DOM_NO_ERR) {
dom_node_unref(c);
+ form_free_control(gadget);
return false;
}