Author: Bleep <tomh@inxpress.net>
[ircu2.10.12-pk.git] / ircd / s_misc.c
index 4cb82723d4f1c5ac2ef781c69a2f44c7d457c227..9d600b6e2b8cba6fbc457b1a1e1ec75b3dde5ffe 100644 (file)
@@ -48,6 +48,7 @@
 #include "struct.h"
 #include "support.h"
 #include "sys.h"
+#include "uping.h"
 #include "userload.h"
 
 #include <assert.h>
@@ -452,6 +453,11 @@ static void exit_one_client(struct Client *bcptr, char *comment)
   if (bcptr->serv && bcptr->serv->client_list)  /* Was SetServerYXX called ? */
     ClearServerYXX(bcptr);      /* Removes server from server_list[] */
   if (IsUser(bcptr)) {
+    /*
+     * clear out uping requests
+     */
+    if (IsUPing(bcptr))
+      uping_cancel(bcptr, 0);
     /*
      * Stop a running /LIST clean
      */