From e854166472cc6a32be0e9d486bf8cc76ce52fb61 Mon Sep 17 00:00:00 2001 From: Nicholas Nethercote Date: Fri, 25 Aug 2023 18:40:31 +1000 Subject: [PATCH] c-hyper: fix another memory leak in `Curl_http`. There is a `hyper_clientconn_free` call on the happy path, but not one on the error path. This commit adds one. Fixes the second memory leak reported by Valgrind in #10803. Fixes #10803 Closes #11729 --- lib/c-hyper.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/c-hyper.c b/lib/c-hyper.c index ebb885669b..808e4e1172 100644 --- a/lib/c-hyper.c +++ b/lib/c-hyper.c @@ -1217,6 +1217,7 @@ CURLcode Curl_http(struct Curl_easy *data, bool *done) } hyper_clientconn_free(client); + client = NULL; if((httpreq == HTTPREQ_GET) || (httpreq == HTTPREQ_HEAD)) { /* HTTP GET/HEAD download */ @@ -1245,6 +1246,9 @@ error: if(handshake) hyper_task_free(handshake); + if(client) + hyper_clientconn_free(client); + if(req) hyper_request_free(req);