diff options
| author | 2022-02-01 11:26:31 +0000 | |
|---|---|---|
| committer | 2022-02-01 11:26:31 +0000 | |
| commit | 170a26e72bc06c79314dbd88b87ace95d6213945 (patch) | |
| tree | e672e70d57fbf13e8865e6496f602ce255d240df /src/modules/m_spanningtree/treeserver.cpp | |
| parent | Fix duplicate messages when a server connection errors. (diff) | |
Fix splitting servers multiple times in some cases.
Diffstat (limited to 'src/modules/m_spanningtree/treeserver.cpp')
| -rw-r--r-- | src/modules/m_spanningtree/treeserver.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/modules/m_spanningtree/treeserver.cpp b/src/modules/m_spanningtree/treeserver.cpp index 6920fc97b..d0afe6c5d 100644 --- a/src/modules/m_spanningtree/treeserver.cpp +++ b/src/modules/m_spanningtree/treeserver.cpp @@ -211,6 +211,10 @@ void TreeServer::SQuitChild(TreeServer* server, const std::string& reason, bool void TreeServer::SQuitInternal(unsigned int& num_lost_servers, bool error) { + // Don't squit a server which is already dead. + if (isdead) + return; + 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) |
