From d736eba00b274c87662bd73a3acf8288135643d6 Mon Sep 17 00:00:00 2001 From: Attila Molnar Date: Sun, 5 Jan 2014 14:17:12 +0100 Subject: Improve UserManager::QuitUser() and related code - Make operreason optional; NULL means same as quitreason - Remove User::quietquit, it is now handled internally in spanningtree - Send snotice about quitting remote users from spanningtree --- src/modules/m_spanningtree/treeserver.cpp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'src/modules/m_spanningtree/treeserver.cpp') diff --git a/src/modules/m_spanningtree/treeserver.cpp b/src/modules/m_spanningtree/treeserver.cpp index 8af3e777d..2fce9a504 100644 --- a/src/modules/m_spanningtree/treeserver.cpp +++ b/src/modules/m_spanningtree/treeserver.cpp @@ -139,7 +139,7 @@ void TreeServer::FinishBurst() int TreeServer::QuitUsers(const std::string &reason) { - const char* reason_s = reason.c_str(); + std::string publicreason = ServerInstance->Config->HideSplits ? "*.net *.split" : reason; std::vector time_to_die; for (user_hash::iterator n = ServerInstance->Users->clientlist->begin(); n != ServerInstance->Users->clientlist->end(); n++) { @@ -153,13 +153,7 @@ int TreeServer::QuitUsers(const std::string &reason) User* a = (User*)*n; if (!IS_LOCAL(a)) { - if (Utils->quiet_bursts) - a->quietquit = true; - - if (ServerInstance->Config->HideSplits) - ServerInstance->Users->QuitUser(a, "*.net *.split", reason_s); - else - ServerInstance->Users->QuitUser(a, reason_s); + ServerInstance->Users->QuitUser(a, publicreason, &reason); } } return time_to_die.size(); -- cgit v1.3.1-10-gc9f91