summaryrefslogtreecommitdiff
path: root/src/cmd_kill.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-09-13 20:07:19 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-09-13 20:07:19 +0000
commitc06d4197afe3830ab6c28d55e8889d1cad36282c (patch)
treed08b78e59acd7273c4a3d0139e2c7bc64d169fb4 /src/cmd_kill.cpp
parent7b3b742d63c33518a9de080f8de3bc1623557a8c (diff)
Special check in cmd_quit and cmd_kill and special return value CMD_USER_DELETED, to prevent theoretical segfault (this isnt the bug youre trying to find, pip)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5230 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/cmd_kill.cpp')
-rw-r--r--src/cmd_kill.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/cmd_kill.cpp b/src/cmd_kill.cpp
index 6fe855a19..dfcf99590 100644
--- a/src/cmd_kill.cpp
+++ b/src/cmd_kill.cpp
@@ -66,6 +66,11 @@ CmdResult cmd_kill::Handle (const char** parameters, int pcnt, userrec *user)
u->PurgeEmptyChannels();
}
+ if (u == user)
+ {
+ FOREACH_MOD(I_OnPostCommand,OnPostCommand("KILL", parameters, pcnt, user, CMD_SUCCESS));
+ return CMD_USER_DELETED;
+ }
DELETE(u);
}
else