diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-06-02 23:39:20 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-06-02 23:39:20 +0000 |
commit | 596e77768110e8fa48c8866fa1367160487d595a (patch) | |
tree | 486eba3ec1ac55c358b017990efb777810a40c32 /src | |
parent | fce90c83999604a5da6fcb0885148036e2c0f31b (diff) |
Possibly fixed the 'vincent' bug
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1597 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r-- | src/inspircd.cpp | 8 |
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 |