summaryrefslogtreecommitdiff
path: root/modules/socketengines/m_socketengine_poll.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2011-01-08 03:35:04 -0500
committerAdam <Adam@anope.org>2011-01-08 03:35:04 -0500
commit2ba97aee6c7b02e9ec62b4ae28fc041423936e10 (patch)
treeed1e6f74287faa2313a560cbd4d4d3dccac6632a /modules/socketengines/m_socketengine_poll.cpp
parenta674d81cafd0bc43c4f9afc8320345b077c77725 (diff)
Ignore EINTR error from poll()
Diffstat (limited to 'modules/socketengines/m_socketengine_poll.cpp')
-rw-r--r--modules/socketengines/m_socketengine_poll.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/modules/socketengines/m_socketengine_poll.cpp b/modules/socketengines/m_socketengine_poll.cpp
index bca06fe93..e85c79bb0 100644
--- a/modules/socketengines/m_socketengine_poll.cpp
+++ b/modules/socketengines/m_socketengine_poll.cpp
@@ -131,9 +131,11 @@ class SocketEnginePoll : public SocketEngineBase
int total = poll(this->events, this->SocketCount, Config->ReadTimeout * 1000);
Anope::CurTime = time(NULL);
+ /* EINTR can be given if the read timeout expires */
if (total == -1)
{
- Log() << "SockEngine::Process(): error: " << Anope::LastError();
+ if (errno != EINTR)
+ Log() << "SockEngine::Process(): error: " << Anope::LastError();
return;
}