aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree/treesocket2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/m_spanningtree/treesocket2.cpp')
-rw-r--r--src/modules/m_spanningtree/treesocket2.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/modules/m_spanningtree/treesocket2.cpp b/src/modules/m_spanningtree/treesocket2.cpp
index de634e231..2075da429 100644
--- a/src/modules/m_spanningtree/treesocket2.cpp
+++ b/src/modules/m_spanningtree/treesocket2.cpp
@@ -410,10 +410,10 @@ void TreeSocket::Close()
// Connection closed.
// If the connection is fully up (state CONNECTED)
// then propagate a netsplit to all peers.
- if (MyRoot)
+ if (MyRoot && !MyRoot->IsDead())
MyRoot->SQuit(GetError(), true);
-
- ServerInstance->SNO.WriteGlobalSno('l', "Connection to '\002%s\002' failed.", linkID.c_str());
+ else
+ ServerInstance->SNO.WriteGlobalSno('l', "Connection to '\002%s\002' failed.", linkID.c_str());
time_t server_uptime = ServerInstance->Time() - this->age;
if (server_uptime)