summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/modules/m_spanningtree.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/modules/m_spanningtree.cpp b/src/modules/m_spanningtree.cpp
index f2ffc1116..92681eca9 100644
--- a/src/modules/m_spanningtree.cpp
+++ b/src/modules/m_spanningtree.cpp
@@ -222,6 +222,11 @@ TreeServer* RouteEnumerate(TreeServer* Current, std::string ServerName)
TreeServer* BestRouteTo(std::string ServerName)
{
log(DEBUG,"Finding best route to %s",ServerName.c_str());
+ if (ServerName.c_str() == TreeRoot->GetName())
+ {
+ log(DEBUG,"Cant route to myself!!!");
+ return NULL;
+ }
// first, find the server by recursively walking the tree
TreeServer* Found = RouteEnumerate(TreeRoot,ServerName);
// did we find it? If not, they did something wrong, abort.
@@ -584,6 +589,7 @@ class TreeSocket : public InspSocket
log(DEBUG,"*** COLLISION: Remote client is newer");
// remote is newer, kill it and bail to stop it being introduced
this->WriteLine(":"+Srv->GetServerName()+" KILL "+tempnick+" :Killed (Nickname collision from "+Srv->GetServerName()+")");
+ log(DEBUG,"*** COLLIDE COMPLETED");
return true;
}
}