changeset 21366:f7f4cb784890

lib-program-client: Do not call program_client_fail twice Fixes crash in program-client caused by use of freed memory.
author Aki Tuomi <aki.tuomi@dovecot.fi>
date Sun, 08 Jan 2017 18:44:32 +0200
parents cc6e4b239003
children 8ebf9edfa432
files src/lib-program-client/program-client.c
diffstat 1 files changed, 1 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-program-client/program-client.c	Sun Dec 25 10:14:07 2016 +0200
+++ b/src/lib-program-client/program-client.c	Sun Jan 08 18:44:32 2017 +0200
@@ -73,18 +73,12 @@
 static
 int program_client_connect(struct program_client *pclient)
 {
-	int ret;
-
 	if (pclient->set.client_connect_timeout_msecs != 0) {
 		pclient->to = timeout_add(pclient->set.client_connect_timeout_msecs,
 					  program_client_connect_timeout, pclient);
 	}
 
-	if ((ret = pclient->connect(pclient)) < 0) {
-		program_client_fail(pclient, PROGRAM_CLIENT_ERROR_IO);
-		return -1;
-	}
-	return ret;
+	return pclient->connect(pclient);
 }
 
 static