]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-program-client: Do not call program_client_fail twice
authorAki Tuomi <aki.tuomi@dovecot.fi>
Sun, 8 Jan 2017 16:44:32 +0000 (18:44 +0200)
committerAki Tuomi <aki.tuomi@dovecot.fi>
Sun, 8 Jan 2017 16:51:20 +0000 (18:51 +0200)
Fixes crash in program-client caused by use of freed memory.

src/lib-program-client/program-client.c

index 69cb74ac57db04dc4e940be86ecafd9cc5cdc5c6..defe261c944ea0c7c094ca4750aeef8f094ac507 100644 (file)
@@ -76,19 +76,12 @@ void program_client_connect_timeout(struct program_client *pclient)
 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