From 212ef5bb8f2bfd2cb623f544db39e86fe57390ea Mon Sep 17 00:00:00 2001 From: Philipp Schafft Date: Wed, 19 Sep 2018 14:39:19 +0000 Subject: [PATCH] Cleanup: Use client_set_queue() and only use it once in client_destroy() --- src/auth.c | 5 ----- src/client.c | 5 +---- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/src/auth.c b/src/auth.c index 0002e596..aa31a4e9 100644 --- a/src/auth.c +++ b/src/auth.c @@ -493,11 +493,6 @@ int auth_release_client (client_t *client) { if (!client->acl) return 0; - - /* drop any queue reference here, we do not want a race between the source thread - * and the auth/fserve thread */ - client_set_queue (client, NULL); - if (client->auth && client->auth->release_client) { auth_client *auth_user = auth_client_setup(client); auth_user->process = auth_remove_client; diff --git a/src/client.c b/src/client.c index 3a0ad6f2..5c91cd13 100644 --- a/src/client.c +++ b/src/client.c @@ -222,10 +222,7 @@ void client_destroy(client_t *client) /* release the buffer now, as the buffer could be on the source queue * and may of disappeared after auth completes */ - if (client->refbuf) { - refbuf_release (client->refbuf); - client->refbuf = NULL; - } + client_set_queue(client, NULL); if (auth_release_client(client)) return;