From cc02bdf3a6f657def1b5746cd5fc4ae1ad590a40 Mon Sep 17 00:00:00 2001 From: Simon Arlott Date: Sat, 23 Apr 2016 23:21:47 +0100 Subject: [PATCH] ircd: fix assert in client_release_connids The connection may have already been closed and MyConnect cleared. It's only a bug if the connection somehow has connids but is not our connection. --- ircd/client.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/ircd/client.c b/ircd/client.c index bfa00dc2..be7031c6 100644 --- a/ircd/client.c +++ b/ircd/client.c @@ -194,9 +194,8 @@ client_release_connids(struct Client *client_p) { rb_dlink_node *ptr, *ptr2; - s_assert(MyConnect(client_p)); - if (!MyConnect(client_p)) - return; + if (client_p->localClient->connids.head) + s_assert(MyConnect(client_p)); RB_DLINK_FOREACH_SAFE(ptr, ptr2, client_p->localClient->connids.head) connid_put(RB_POINTER_TO_UINT(ptr->data));