X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsocketengine.cpp;h=c6c520efcd12501212dabdddca8cd930e528076b;hb=5866a765cc0e15d4631b443c553fd0011d01320e;hp=698b9061ffdbddce243fa160cc980d130cb70c89;hpb=efe77ba63b1e519fc4d563bd9b599277c4bd96e5;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/socketengine.cpp b/src/socketengine.cpp index 698b9061f..c6c520efc 100644 --- a/src/socketengine.cpp +++ b/src/socketengine.cpp @@ -136,7 +136,7 @@ bool SocketEngine::BoundsCheckFd(EventHandler* eh) { if (!eh) return false; - if ((eh->GetFd() < 0) || (eh->GetFd() > GetMaxFds())) + if (eh->GetFd() < 0) return false; return true; } @@ -147,13 +147,12 @@ int SocketEngine::Accept(EventHandler* fd, sockaddr *addr, socklen_t *addrlen) return accept(fd->GetFd(), addr, addrlen); } -int SocketEngine::Close(EventHandler* fd) +int SocketEngine::Close(EventHandler* eh) { -#ifdef _WIN32 - return closesocket(fd->GetFd()); -#else - return close(fd->GetFd()); -#endif + DelFd(eh); + int ret = Close(eh->GetFd()); + eh->SetFd(-1); + return ret; } int SocketEngine::Close(int fd)