From d6e312317631b4bed4c4e88b932a3c95616ffbb3 Mon Sep 17 00:00:00 2001 From: Christopher Faulet Date: Thu, 21 May 2020 10:10:41 +0200 Subject: [PATCH] BUG/MINOR: http-htx: Fix a leak on error path during http reply parsing When "hdr" arguments of an http reply are parsed, the allocated header may leak on error path. Adding it to the header list earlier fixes the issue. This patch should partly fix the issue #645. No backport needed. --- src/http_htx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/http_htx.c b/src/http_htx.c index e1b7793317..3137fbebbf 100644 --- a/src/http_htx.c +++ b/src/http_htx.c @@ -1538,13 +1538,13 @@ struct http_reply *http_parse_http_reply(const char **args, int *orig_arg, struc memprintf(errmsg, "'%s' : out of memory", args[cur_arg-1]); goto error; } + LIST_ADDQ(&reply->hdrs, &hdr->list); LIST_INIT(&hdr->value); hdr->name = ist(strdup(args[cur_arg])); if (!isttest(hdr->name)) { memprintf(errmsg, "out of memory"); goto error; } - LIST_ADDQ(&reply->hdrs, &hdr->list); if (!parse_logformat_string(args[cur_arg+1], px, &hdr->value, LOG_OPT_HTTP, cap, errmsg)) goto error; -- 2.47.3