From 001e9c1372a1c6fc2877f9d6607cf662f09228df Mon Sep 17 00:00:00 2001 From: Attila Molnar Date: Mon, 28 Jul 2014 14:31:57 +0200 Subject: m_spanningtree Remove split servers from the hash maps in TreeServer::SQuitInternal() --- src/modules/m_spanningtree/treeserver.cpp | 4 ++++ 1 file changed, 4 insertions(+) (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 f493f6d20..5a2d4f886 100644 --- a/src/modules/m_spanningtree/treeserver.cpp +++ b/src/modules/m_spanningtree/treeserver.cpp @@ -213,6 +213,7 @@ void TreeServer::SQuitInternal(const std::string& reason, int& num_lost_servers, num_lost_servers++; num_lost_users += QuitUsers(reason); + RemoveHash(); } int TreeServer::QuitUsers(const std::string &reason) @@ -362,7 +363,10 @@ TreeServer::~TreeServer() /* We'd better tidy up after ourselves, eh? */ if (!IsRoot()) delete ServerUser; +} +void TreeServer::RemoveHash() +{ Utils->sidlist.erase(sid); Utils->serverlist.erase(GetName()); } -- cgit v1.3.1-10-gc9f91