summaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree/treeserver.cpp
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2019-09-23 11:51:09 +0100
committerPeter Powell <petpow@saberuk.com>2019-09-23 13:18:19 +0100
commitcf5d382b822cecd54fdbc77e4c1c4de8a8aa3c35 (patch)
treef05c9f3c3acfc863dd053abacde791f32fa216f1 /src/modules/m_spanningtree/treeserver.cpp
parenta4305d8f3c3e613be839bdcd61a1d14c87fed5aa (diff)
Add whether the server split with an error to OnServerSplit.
Diffstat (limited to 'src/modules/m_spanningtree/treeserver.cpp')
-rw-r--r--src/modules/m_spanningtree/treeserver.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/modules/m_spanningtree/treeserver.cpp b/src/modules/m_spanningtree/treeserver.cpp
index 2b143269c..c463ef1c8 100644
--- a/src/modules/m_spanningtree/treeserver.cpp
+++ b/src/modules/m_spanningtree/treeserver.cpp
@@ -172,7 +172,7 @@ void TreeServer::FinishBurst()
FinishBurstInternal();
}
-void TreeServer::SQuitChild(TreeServer* server, const std::string& reason)
+void TreeServer::SQuitChild(TreeServer* server, const std::string& reason, bool error)
{
stdalgo::erase(Children, server);
@@ -188,7 +188,7 @@ void TreeServer::SQuitChild(TreeServer* server, const std::string& reason)
}
unsigned int num_lost_servers = 0;
- server->SQuitInternal(num_lost_servers);
+ server->SQuitInternal(num_lost_servers, error);
const std::string quitreason = GetName() + " " + server->GetName();
unsigned int num_lost_users = QuitUsers(quitreason);
@@ -204,14 +204,14 @@ void TreeServer::SQuitChild(TreeServer* server, const std::string& reason)
ServerInstance->GlobalCulls.AddItem(server);
}
-void TreeServer::SQuitInternal(unsigned int& num_lost_servers)
+void TreeServer::SQuitInternal(unsigned int& num_lost_servers, bool error)
{
ServerInstance->Logs->Log(MODNAME, LOG_DEBUG, "Server %s lost in split", GetName().c_str());
for (ChildServers::const_iterator i = Children.begin(); i != Children.end(); ++i)
{
TreeServer* server = *i;
- server->SQuitInternal(num_lost_servers);
+ server->SQuitInternal(num_lost_servers, error);
}
// Mark server as dead
@@ -220,7 +220,7 @@ void TreeServer::SQuitInternal(unsigned int& num_lost_servers)
RemoveHash();
if (!Utils->Creator->dying)
- FOREACH_MOD_CUSTOM(Utils->Creator->GetLinkEventProvider(), ServerProtocol::LinkEventListener, OnServerSplit, (this));
+ FOREACH_MOD_CUSTOM(Utils->Creator->GetLinkEventProvider(), ServerProtocol::LinkEventListener, OnServerSplit, (this, error));
}
unsigned int TreeServer::QuitUsers(const std::string& reason)