dovecot-2.2: lib-http: Fixed double-free on delayed connect() fa...

dovecot at dovecot.org dovecot at dovecot.org
Thu Apr 4 14:51:30 EEST 2013


details:   http://hg.dovecot.org/dovecot-2.2/rev/18a0b570df80
changeset: 16151:18a0b570df80
user:      Timo Sirainen <tss at iki.fi>
date:      Thu Apr 04 14:51:20 2013 +0300
description:
lib-http: Fixed double-free on delayed connect() failures caused by recent change.

diffstat:

 src/lib-http/http-client-connection.c |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (19 lines):

diff -r d3921050f540 -r 18a0b570df80 src/lib-http/http-client-connection.c
--- a/src/lib-http/http-client-connection.c	Thu Apr 04 14:41:06 2013 +0300
+++ b/src/lib-http/http-client-connection.c	Thu Apr 04 14:51:20 2013 +0300
@@ -734,7 +734,6 @@
 		http_client_connection_error(conn, "connect(%s) failed: %m",
 					     _conn->name);
 		http_client_peer_connection_failure(conn->peer);
-		http_client_connection_unref(&conn);
 	} else {
 		http_client_connection_debug(conn, "Connected");
 		if (conn->peer->addr.ssl) {
@@ -773,6 +772,7 @@
 	timeout_remove(&conn->to_input);
 	errno = conn->connect_errno;
 	http_client_connection_connected(&conn->conn, FALSE);
+	http_client_connection_unref(&conn);
 }
 
 static void http_client_connection_connect(struct http_client_connection *conn)


More information about the dovecot-cvs mailing list