summaryrefslogtreecommitdiff
path: root/src/command_parse.cpp
diff options
context:
space:
mode:
authorGravatar danieldg2009-10-18 23:40:24 +0000
committerGravatar danieldg2009-10-18 23:40:24 +0000
commit164eafbaac4dba0c855bde72bed6e8fcddd3431b (patch)
tree794057187176863a0ac6fd22bf2bd4eec2eb56b1 /src/command_parse.cpp
parentRewrite m_alias DoCommand to do variable substitution in one pass, fixing bug... (diff)
Stop recvq processing when a user is marked as quitting
git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@11913 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/command_parse.cpp')
-rw-r--r--src/command_parse.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/command_parse.cpp b/src/command_parse.cpp
index f7d57daf9..e371e8810 100644
--- a/src/command_parse.cpp
+++ b/src/command_parse.cpp
@@ -402,15 +402,12 @@ bool CommandParser::ProcessCommand(User *user, std::string &cmd)
MOD_RESULT = 0;
FOREACH_RESULT(I_OnPreCommand,OnPreCommand(command, command_p, user, true, cmd));
if (MOD_RESULT == 1)
- return do_more;
+ return do_more && !user->quitting;
- /*
- * WARNING: be careful, the user may be deleted soon
- */
CmdResult result = cm->second->Handle(command_p, user);
FOREACH_MOD(I_OnPostCommand,OnPostCommand(command, command_p, user, result,cmd));
- return do_more;
+ return do_more && !user->quitting;
}
}