changeset 16267:79a74a23b742

lib-http: Don't double-free request memory when aborting them.
author Timo Sirainen <tss@iki.fi>
date Wed, 10 Apr 2013 18:00:12 +0300
parents 6466af800ed4
children a3bd79aec23a
files src/lib-http/http-client-connection.c
diffstat 1 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-http/http-client-connection.c	Wed Apr 10 17:53:24 2013 +0300
+++ b/src/lib-http/http-client-connection.c	Wed Apr 10 18:00:12 2013 +0300
@@ -107,9 +107,9 @@
 	conn->closing = TRUE;
 	
 	array_foreach_modifiable(&conn->request_wait_list, req) {
+		i_assert((*req)->submitted);
 		http_client_request_error(*req, status, error);
-		http_client_request_unref(req);
-	}	
+	}
 	array_clear(&conn->request_wait_list);
 	http_client_connection_unref(_conn);
 }
@@ -819,9 +819,9 @@
 
 	/* abort all pending requests */
 	array_foreach_modifiable(&conn->request_wait_list, req) {
+		i_assert((*req)->submitted);
 		http_client_request_error(*req, HTTP_CLIENT_REQUEST_ERROR_ABORTED,
 			"Aborting");
-		http_client_request_unref(req);
 	}
 	array_free(&conn->request_wait_list);