From 319b45a71fb6c828cade95f74724f0ee0eb93d2c Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Mon, 14 Jun 2021 18:17:02 +0300 Subject: [PATCH] doveadm: Delay freeing doveadm_mail_server_cmd() Needed by the next commit. --- src/doveadm/doveadm-mail-server.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/doveadm/doveadm-mail-server.c b/src/doveadm/doveadm-mail-server.c index 2e356be1bb..18956db198 100644 --- a/src/doveadm/doveadm-mail-server.c +++ b/src/doveadm/doveadm-mail-server.c @@ -104,22 +104,21 @@ static void doveadm_cmd_callback(const struct doveadm_server_reply *reply, struct doveadm_mail_server_cmd *servercmd = context; struct doveadm_server *server = server_connection_get_server(servercmd->conn); - const char *username = t_strdup(servercmd->username); - - doveadm_mail_server_cmd_free(&servercmd); switch (reply->exit_code) { case 0: break; case SERVER_EXIT_CODE_DISCONNECTED: i_error("%s: Command %s failed for %s: %s", - server->name, cmd_ctx->cmd->name, username, + server->name, cmd_ctx->cmd->name, servercmd->username, reply->error); internal_failure = TRUE; io_loop_stop(current_ioloop); + doveadm_mail_server_cmd_free(&servercmd); return; case EX_NOUSER: - i_error("%s: No such user: %s", server->name, username); + i_error("%s: No such user: %s", server->name, + servercmd->username); if (cmd_ctx->exit_code == 0) cmd_ctx->exit_code = EX_NOUSER; break; @@ -128,6 +127,7 @@ static void doveadm_cmd_callback(const struct doveadm_server_reply *reply, cmd_ctx->exit_code = reply->exit_code; break; } + doveadm_mail_server_cmd_free(&servercmd); if (array_count(&server->queue) > 0) { struct server_connection *conn; -- 2.47.3