summaryrefslogtreecommitdiff
path: root/src/usermanager.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2009-03-18 10:28:10 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2009-03-18 10:28:10 +0000
commitfc98fbf44d18ba866102544ca09f1b1c551fdb49 (patch)
tree20bf33870ada4bd9966647bbedd3dadbe22021df /src/usermanager.cpp
parent876fb4786191b9d88994cfc981a22aa075bca153 (diff)
Fix for bug #788, set user->quitting before writing error to users socket, and allow appending to sendq for quitting users (just don't check sendq's on quitting users)
This allows the ERROR message to reach the user. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11231 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/usermanager.cpp')
-rw-r--r--src/usermanager.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/usermanager.cpp b/src/usermanager.cpp
index 68576f331..d930fd039 100644
--- a/src/usermanager.cpp
+++ b/src/usermanager.cpp
@@ -178,9 +178,11 @@ void UserManager::QuitUser(User *user, const std::string &quitreason, const char
return;
}
- ServerInstance->Logs->Log("USERS", DEBUG,"QuitUser: %s '%s'", user->nick.c_str(), quitreason.c_str());
- user->Write("ERROR :Closing link: (%s@%s) [%s]", user->ident.c_str(), user->host.c_str(), *operreason ? operreason : quitreason.c_str());
user->quitting = true;
+
+ ServerInstance->Logs->Log("USERS", DEBUG, "QuitUser: %s '%s'", user->nick.c_str(), quitreason.c_str());
+ user->Write("ERROR :Closing link: (%s@%s) [%s]", user->ident.c_str(), user->host.c_str(), *operreason ? operreason : quitreason.c_str());
+
user->quietquit = false;
user->quitmsg = quitreason;