# HG changeset patch # User Timo Sirainen # Date 1538464931 -10800 # Node ID cee60b46c2f45282982f5c10ca697f73f8527220 # Parent 75d7b38afb60659f536b54bd1c265ac7b69d4c59 lib-master: ipc-client: Don't free command too early When multiple replies were received by IPC only the final reply should free the command. This may have caused e.g. "doveadm proxy list" to crash. Broken by 435f0545b200767c25a5daee17cd6b4998d03710 diff -r 75d7b38afb60 -r cee60b46c2f4 src/lib-master/ipc-client.c --- a/src/lib-master/ipc-client.c Thu Jul 05 14:55:38 2018 +0300 +++ b/src/lib-master/ipc-client.c Tue Oct 02 10:22:11 2018 +0300 @@ -73,10 +73,10 @@ else client->aborted_cmds_count--; } - if (cmd != NULL) { + if (cmd != NULL) cmd->callback(state, line, cmd->context); + if (state != IPC_CLIENT_CMD_STATE_REPLY) i_free(cmd); - } if (disconnect) ipc_client_disconnect(client); }