]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-http: Make sure we don't access already freed client connection in payload-destro...
authorTimo Sirainen <tss@iki.fi>
Wed, 29 Oct 2014 00:15:31 +0000 (17:15 -0700)
committerTimo Sirainen <tss@iki.fi>
Wed, 29 Oct 2014 00:15:31 +0000 (17:15 -0700)
src/lib-http/http-client-connection.c

index 304d3114bac085cdb9a66de003a0c5cfc6be0b91..1175dee961f17ab6a5fe5902e5d461694a20ea7b 100644 (file)
@@ -441,6 +441,7 @@ static void http_client_payload_destroyed(struct http_client_request *req)
        req->conn = NULL;
        conn->incoming_payload = NULL;
        conn->pending_request = NULL;
+       http_client_connection_ref(conn);
        http_client_request_finish(&req);
 
        /* room for new requests */
@@ -457,6 +458,7 @@ static void http_client_payload_destroyed(struct http_client_request *req)
 
        i_assert(req != NULL);
        http_client_request_unref(&req);
+       http_client_connection_unref(&conn);
 }
 
 static bool