diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-05-23 18:51:54 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-05-23 18:51:54 +0000 |
commit | 7cb5def29fe62fe106acca0e4498f28efa4e42ba (patch) | |
tree | 5ce249e153c90fa39b9dda7925bb35a15c13018a | |
parent | bac7dea75b15323bb678ed56ca54606ee92c0afd (diff) |
Fixed bug where when a server split all other servers would stop responding
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1479 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r-- | src/commands.cpp | 1 | ||||
-rw-r--r-- | src/inspircd.cpp | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/commands.cpp b/src/commands.cpp index 5466a6258..916c9bc10 100644 --- a/src/commands.cpp +++ b/src/commands.cpp @@ -2631,6 +2631,7 @@ void handle_amp(char token,char* params,serverrec* source,serverrec* reply, char } } } + log(DEBUG,"Done with netsplit."); } unsigned long authcookie; diff --git a/src/inspircd.cpp b/src/inspircd.cpp index c0603db59..712e26f5e 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -2913,6 +2913,11 @@ int InspIRCd(char** argv, int argc) strlcpy(tcp_msg,msg.c_str(),MAXBUF); if (me[x]) handle_link_packet(tcp_msg, tcp_host, me[x], tcp_sum); + if (!me[x]->FindHost(tcp_host)) + { + log(DEBUG,"Connector gone, bailing!"); + goto label; + } } sums.clear(); // we're done, clear the list for the next operation msgs.clear(); |