From: Timo Sirainen Date: Thu, 31 Jan 2019 12:07:19 +0000 (+0200) Subject: lib-master: ipc-client - Fix crash on connect failure X-Git-Tag: 2.2.36.1~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f2a72a74aa01558f5f2a8399c03f32be60b8ade5;p=thirdparty%2Fdovecot%2Fcore.git lib-master: ipc-client - Fix crash on connect failure Broken by b7ecba9d6d358569d367620f95e3817da99e0036, which relied on v2.3 behavior for timeout_remove(). --- diff --git a/src/lib-master/ipc-client.c b/src/lib-master/ipc-client.c index 1ec89d44be..6db4d990b8 100644 --- a/src/lib-master/ipc-client.c +++ b/src/lib-master/ipc-client.c @@ -128,7 +128,8 @@ static void ipc_client_abort_commands(struct ipc_client *client, static void ipc_client_disconnect(struct ipc_client *client) { - timeout_remove(&client->to_failed); + if (client->to_failed != NULL) + timeout_remove(&client->to_failed); ipc_client_abort_commands(client, "Disconnected"); if (client->fd == -1) @@ -167,7 +168,8 @@ void ipc_client_deinit(struct ipc_client **_client) static void ipc_client_cmd_connect_failed(struct ipc_client *client) { ipc_client_abort_commands(client, "ipc connect failed"); - timeout_remove(&client->to_failed); + if (client->to_failed != NULL) + timeout_remove(&client->to_failed); } struct ipc_client_cmd *