From 3e08819db94ae86f995e1e14650258c6428a9f84 Mon Sep 17 00:00:00 2001 From: Michael Drake Date: Wed, 23 Oct 2013 12:34:48 +0100 Subject: Fix leaks in form_successful_controls. 'charset' was always leaked, value was leaked in particular OOM case. --- render/form.c | 4 ++++ 1 file changed, 4 insertions(+) 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; -- cgit v1.2.3