From 7b7a9e09a6beb2e2d20d66197bfdcb1ec3a588d2 Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan@rename-it.nl> Date: Tue, 17 Jun 2014 20:58:23 +0200 Subject: [PATCH] managesieve: Remove the client from clients-list at the very end of the destroy function. Parallel to identical Dovecot change for imap and pop3. --- src/managesieve/managesieve-client.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/managesieve/managesieve-client.c b/src/managesieve/managesieve-client.c index 8a6b48342..0f15a9260 100644 --- a/src/managesieve/managesieve-client.c +++ b/src/managesieve/managesieve-client.c @@ -218,9 +218,6 @@ void client_destroy(struct client *client, const char *reason) i_info("%s %s", reason, client_stats(client)); } - managesieve_client_count--; - DLLIST_REMOVE(&managesieve_clients, client); - if (client->command_pending) { /* try to deinitialize the command */ i_assert(client->cmd.func != NULL); @@ -263,6 +260,9 @@ void client_destroy(struct client *client, const char *reason) sieve_deinit(&client->svinst); pool_unref(&client->cmd.pool); + + managesieve_client_count--; + DLLIST_REMOVE(&managesieve_clients, client); pool_unref(&client->pool); master_service_client_connection_destroyed(master_service); -- GitLab