From 2f03a0bfaf10f3bba7c041d7d5189f764735d5fd Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Wed, 1 May 2013 22:32:28 +0100 Subject: fix use after free on error path --- desktop/tree_url_node.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'desktop/tree_url_node.c') diff --git a/desktop/tree_url_node.c b/desktop/tree_url_node.c index f411dac64..76bc8a47c 100644 --- a/desktop/tree_url_node.c +++ b/desktop/tree_url_node.c @@ -565,12 +565,12 @@ static void tree_url_load_entry(dom_node *li, tree_url_load_ctx *ctx) error = nsurl_create(url2, &url); - free(url2); - if (error != NSERROR_OK) { LOG(("Failed normalising '%s'", url2)); - warn_user("NoMemory", NULL); + free(url2); + + warn_user(messages_get_errorcode(error), NULL); free(title); dom_node_unref(a); @@ -578,6 +578,8 @@ static void tree_url_load_entry(dom_node *li, tree_url_load_ctx *ctx) return; } + free(url2); + data = urldb_get_url_data(url); if (data == NULL) { /* No entry in database, so add one */ -- cgit v1.2.3