aboutsummaryrefslogtreecommitdiff
path: root/src/socketengines/socketengine_select.cpp
diff options
context:
space:
mode:
authorGravatar Peter Powell2017-10-22 02:27:25 +0100
committerGravatar Peter Powell2017-10-22 19:44:45 +0100
commitb1098712771ab823042fcf8614a706c76c2ff401 (patch)
tree7feb35687035b5ac6e1dd4181501400c31a54efc /src/socketengines/socketengine_select.cpp
parentRemove support for the Solaris IOCP socket engine. (diff)
Convert GetMaxFds() to size_t and deduplicate setting code.
Diffstat (limited to 'src/socketengines/socketengine_select.cpp')
-rw-r--r--src/socketengines/socketengine_select.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/socketengines/socketengine_select.cpp b/src/socketengines/socketengine_select.cpp
index 42f634db1..03f0aca62 100644
--- a/src/socketengines/socketengine_select.cpp
+++ b/src/socketengines/socketengine_select.cpp
@@ -35,7 +35,7 @@ namespace
void SocketEngine::Init()
{
- MAX_DESCRIPTORS = FD_SETSIZE;
+ MaxSetSize = FD_SETSIZE;
FD_ZERO(&ReadSet);
FD_ZERO(&WriteSet);
@@ -53,7 +53,11 @@ void SocketEngine::RecoverFromFork()
bool SocketEngine::AddFd(EventHandler* eh, int event_mask)
{
int fd = eh->GetFd();
- if ((fd < 0) || (fd > GetMaxFds() - 1))
+
+ if (fd < 0)
+ return false;
+
+ if (static_cast<size_t>(fd) >= GetMaxFds())
return false;
if (!SocketEngine::AddFdRef(eh))
@@ -73,7 +77,10 @@ void SocketEngine::DelFd(EventHandler* eh)
{
int fd = eh->GetFd();
- if ((fd < 0) || (fd > GetMaxFds() - 1))
+ if (fd < 0)
+ return;
+
+ if (static_cast<size_t>(fd) >= GetMaxFds())
return;
SocketEngine::DelFdRef(eh);