summaryrefslogtreecommitdiff
path: root/src/inspsocket.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2007-07-11 16:59:10 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2007-07-11 16:59:10 +0000
commite93cdf5a66ef90b0b0ea64c80c7e4eebdecb55c9 (patch)
tree348bf916883e211f5850284b1048f79cb609fcf7 /src/inspsocket.cpp
parentbf517cb0ad1a1302ff828dbe27691a0b355720b2 (diff)
Fix for bug #347.
WARNING: QA PEOPLE, THIS NEEDS TESTING!!!! Test this with lots of squits and connects, and i mean lots and lots in all different ways you can think of, /squit, pingout, closing the connection with a firewall etc. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7434 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/inspsocket.cpp')
-rw-r--r--src/inspsocket.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/inspsocket.cpp b/src/inspsocket.cpp
index c2b80a225..f29366c73 100644
--- a/src/inspsocket.cpp
+++ b/src/inspsocket.cpp
@@ -359,6 +359,9 @@ void InspSocket::Close()
this->OnClose();
shutdown(this->fd,2);
close(this->fd);
+
+ if (Instance->SocketCull.find(this) == Instance->SocketCull.end())
+ Instance->SocketCull[this] = this;
}
errno = save;
}