summaryrefslogtreecommitdiff
path: root/src/inspircd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/inspircd.cpp')
-rw-r--r--src/inspircd.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/inspircd.cpp b/src/inspircd.cpp
index bacd92961..670b24441 100644
--- a/src/inspircd.cpp
+++ b/src/inspircd.cpp
@@ -911,6 +911,14 @@ void InspIRCd::DoOneIteration(bool process_module_sockets)
/* if any users was quit, take them out */
GlobalCulls.Apply();
+ /* If any inspsockets closed, remove them */
+ for (std::map<InspSocket*,InspSocket*>::iterator x = SocketCull.begin(); x != SocketCull.end(); ++x)
+ {
+ SE->DelFd(x->second);
+ x->second->Close();
+ delete x->second;
+ }
+ SocketCull.clear();
}
bool InspIRCd::IsIdent(const char* n)
@@ -933,7 +941,6 @@ bool InspIRCd::IsIdent(const char* n)
return true;
}
-
int InspIRCd::Run()
{
while (true)