From c887af2358c0f0e389422479f23e74422cdcd1c9 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 19 Oct 2024 09:27:55 +0000 Subject: [PATCH] httpclient: Keep better track of all sorts of references Signed-off-by: Michael Tremer --- src/libpakfire/httpclient.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/libpakfire/httpclient.c b/src/libpakfire/httpclient.c index c272c3b61..4e068eba6 100644 --- a/src/libpakfire/httpclient.c +++ b/src/libpakfire/httpclient.c @@ -430,11 +430,8 @@ static void pakfire_httpclient_free(struct pakfire_httpclient* client) { struct pakfire_httpclient_xfer* e = NULL; // Free any xfers that we still hold - for (;;) { + while (!TAILQ_EMPTY(&client->xfers)) { e = TAILQ_LAST(&client->xfers, xfers); - if (!e) - break; - TAILQ_REMOVE(&client->xfers, e, nodes); pakfire_httpclient_xfer_free(e); @@ -581,6 +578,9 @@ int pakfire_httpclient_remove_xfer(struct pakfire_httpclient* client, goto ERROR; } + if (e) + TAILQ_REMOVE(&client->xfers, e, nodes); + ERROR: if (e) pakfire_httpclient_xfer_free(e); -- 2.39.5