summaryrefslogtreecommitdiff
path: root/content/fetchers/about.c
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@netsurf-browser.org>2011-10-11 06:55:20 +0000
committerDaniel Silverstone <dsilvers@netsurf-browser.org>2011-10-11 06:55:20 +0000
commit986720d9d77794e20499935fe2d219d4231f7edb (patch)
tree2c5c3b68461cee169f28cc56ad66fc37f29837bd /content/fetchers/about.c
parent56e7b234152e5bd792d2885db2eabab008064b5e (diff)
downloadnetsurf-986720d9d77794e20499935fe2d219d4231f7edb.tar.gz
netsurf-986720d9d77794e20499935fe2d219d4231f7edb.tar.bz2
If the about handler fails to intern its strings, return the error, cleaning up first
svn path=/trunk/netsurf/; revision=13031
Diffstat (limited to 'content/fetchers/about.c')
-rw-r--r--content/fetchers/about.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/content/fetchers/about.c b/content/fetchers/about.c
index cb533bc54..ab5f1f6f0 100644
--- a/content/fetchers/about.c
+++ b/content/fetchers/about.c
@@ -586,6 +586,12 @@ static bool fetch_about_initialise(lwc_string *scheme)
error = lwc_intern_string(about_handler_list[abt_loop].name,
about_handler_list[abt_loop].name_len,
&about_handler_list[abt_loop].lname);
+ if (error != lwc_error_ok) {
+ while (abt_loop-- != 0) {
+ lwc_string_unref(about_handler_list[abt_loop].lname);
+ }
+ return false;
+ }
}
return true;