diff options
author | Michael Drake <tlsa@netsurf-browser.org> | 2013-10-23 12:34:48 +0100 |
---|---|---|
committer | Michael Drake <tlsa@netsurf-browser.org> | 2013-10-23 12:34:48 +0100 |
commit | 3e08819db94ae86f995e1e14650258c6428a9f84 (patch) | |
tree | 6f4f95b6669608f5ec3f6349ced7148c7665a5ca | |
parent | 479fcefd9adb9f234346b1e87bd0e128738c0446 (diff) | |
download | netsurf-3e08819db94ae86f995e1e14650258c6428a9f84.tar.gz netsurf-3e08819db94ae86f995e1e14650258c6428a9f84.tar.bz2 |
Fix leaks in form_successful_controls. 'charset' was always leaked, value was leaked in particular OOM case.
-rw-r--r-- | render/form.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/render/form.c b/render/form.c index 684e1c845..ebe9b6f28 100644 --- a/render/form.c +++ b/render/form.c @@ -611,6 +611,7 @@ bool form_successful_controls(struct form *form, success_new = malloc(sizeof(*success_new)); if (!success_new) { LOG(("malloc failed")); + free(value); goto no_memory; } success_new->file = false; @@ -626,11 +627,14 @@ bool form_successful_controls(struct form *form, } } + free(charset); + *successful_controls = sentinel.next; return true; no_memory: warn_user("NoMemory", 0); + free(charset); fetch_multipart_data_destroy(sentinel.next); return false; |