summaryrefslogtreecommitdiff
path: root/src/inspircd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/inspircd.cpp')
-rw-r--r--src/inspircd.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/inspircd.cpp b/src/inspircd.cpp
index 08897680f..7d4f8f82e 100644
--- a/src/inspircd.cpp
+++ b/src/inspircd.cpp
@@ -2346,6 +2346,7 @@ void NetSendMyRoutingTable()
void DoSplit(const char* params)
{
bool go_again = true;
+ int x = 0;
while (go_again)
{
go_again = false;
@@ -2357,16 +2358,23 @@ void DoSplit(const char* params)
{
if (!strcasecmp(j->GetServerName().c_str(),params))
{
+ log(DEBUG,"Removing %s",j->GetServerName().c_str());
j->routes.clear();
j->CloseConnection();
me[i]->connectors.erase(j);
go_again = true;
+ x++;
break;
}
}
}
}
}
+ if (!x)
+ {
+ log(DEBUG,"No clients to remove.");
+ return;
+ }
log(DEBUG,"Removed server. Will remove clients...");
// iterate through the userlist and remove all users on this server.
// because we're dealing with a mesh, we dont have to deal with anything