diff --git a/src/managesieve/managesieve-client.c b/src/managesieve/managesieve-client.c index 6bdba1cd2a5f125e6c7a2a0b8dbd6560bd0bc353..48e19842f40eb4acfd18b75c2ab6cbb5569cfe44 100644 --- a/src/managesieve/managesieve-client.c +++ b/src/managesieve/managesieve-client.c @@ -265,9 +265,7 @@ void client_destroy(struct client *client, const char *reason) timeout_remove(&client->to_idle); /* i/ostreams are already closed at this stage, so fd can be closed */ - net_disconnect(client->fd_in); - if (client->fd_in != client->fd_out) - net_disconnect(client->fd_out); + fd_close_maybe_stdio(&client->fd_in, &client->fd_out); /* Free the user after client is already disconnected. It may start some background work like autoexpunging. */