aboutsummaryrefslogtreecommitdiff
path: root/src/socketengine_iocp.cpp
diff options
context:
space:
mode:
authorGravatar brain2007-10-21 19:09:59 +0000
committerGravatar brain2007-10-21 19:09:59 +0000
commit32bffd861fd1c8b723ae63f4ea66720fd47e7d0a (patch)
tree3e6417442f7adc152bec27d1a470a245bdca91c2 /src/socketengine_iocp.cpp
parentRemove more debug (diff)
Change how the socket engines work when you addfd on an fd that already exists.
the only SANE outcome is that youve forgotten to DelFd, so it does this for you. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8269 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/socketengine_iocp.cpp')
-rw-r--r--src/socketengine_iocp.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/socketengine_iocp.cpp b/src/socketengine_iocp.cpp
index 155fb14f4..d780b9043 100644
--- a/src/socketengine_iocp.cpp
+++ b/src/socketengine_iocp.cpp
@@ -58,10 +58,7 @@ bool IOCPEngine::AddFd(EventHandler* eh)
/* Already an entry here */
if (ref[*fake_fd])
- {
- delete fake_fd;
- return false;
- }
+ DelFd(ref[fd]);
/* are we a listen socket? */
getsockopt(eh->GetFd(), SOL_SOCKET, SO_ACCEPTCONN, (char*)&is_accept, &opt_len);