X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=ircd%2Fircd_auth.c;h=29affeedee5428db91df00061bf61b1d6b922841;hb=e9d777c29b0fed2ab484a62d2e2422a02d074d3b;hp=8b76a160cab521c84c94000b3b7d76e9e37e9b6a;hpb=37b928932bbc44140d797a2cda74b83786ccf0d5;p=ircu2.10.12-pk.git diff --git a/ircd/ircd_auth.c b/ircd/ircd_auth.c index 8b76a16..29affee 100644 --- a/ircd/ircd_auth.c +++ b/ircd/ircd_auth.c @@ -721,10 +721,10 @@ void iauth_exit_client(struct Client *cptr) iauth_dispose_request(iauth_active, cli_iauth(cptr)); cli_iauth(cptr) = NULL; } - if (!i_GetConnected(iauth_active)) - return; - iauth_send(iauth_active, "ExitUser %x", cptr); - iauth_write(iauth_active); + if (iauth_active && i_GetConnected(iauth_active)) { + iauth_send(iauth_active, "ExitUser %x", cptr); + iauth_write(iauth_active); + } } /** Find pending request with a particular ID. @@ -754,7 +754,7 @@ static struct IAuthRequest *iauth_find_request(struct IAuth *iauth, char *id) static void iauth_dispose_request(struct IAuth *iauth, struct IAuthRequest *iar) { assert(iar->iar_client != NULL); - if (iar->iar_timed) + if (iar->iar_timed && t_active(&i_request_timer(iauth))) timer_del(&i_request_timer(iauth)); cli_iauth(iar->iar_client) = NULL; iar->iar_prev->iar_next = iar->iar_next;