From: Stephan Bosch Date: Sat, 14 Mar 2020 11:21:15 +0000 (+0100) Subject: lib-http: http-server-request - Don't destroy anything when request destroy is delayed. X-Git-Tag: 2.3.11.2~261 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fa8127c9d01fe3a6a0048fa4a2402b2b7981f66b;p=thirdparty%2Fdovecot%2Fcore.git lib-http: http-server-request - Don't destroy anything when request destroy is delayed. --- diff --git a/src/lib-http/http-server-request.c b/src/lib-http/http-server-request.c index eddb4efd8e..a4b6fcd4c5 100644 --- a/src/lib-http/http-server-request.c +++ b/src/lib-http/http-server-request.c @@ -135,7 +135,11 @@ void http_server_request_destroy(struct http_server_request **_req) if (req->delay_destroy) { req->destroy_pending = TRUE; - } else if (req->destroy_callback != NULL) { + http_server_request_unref(_req); + return; + } + + if (req->destroy_callback != NULL) { void (*callback)(void *) = req->destroy_callback; req->destroy_callback = NULL;