X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FScheduler%2FPoller.ct;h=bbe5c31cfd30713df28bf5e08c0795fb7f6e8db8;hb=0e83cd2ee1ebc409cf73d8774b01bf01f3df22f4;hp=0cd1f076e7dea1dbb49d576b5552371a88d41b9e;hpb=26610f603ebdd465307b9621f532c1fe19fd5571;p=senf.git diff --git a/senf/Scheduler/Poller.ct b/senf/Scheduler/Poller.ct index 0cd1f07..bbe5c31 100644 --- a/senf/Scheduler/Poller.ct +++ b/senf/Scheduler/Poller.ct @@ -65,14 +65,12 @@ prefix_ typename senf::scheduler::detail::Poller::range senf::scheduler:: { static epoll_event events[NumEvents]; int rv (0); - for (;;) { - rv = epoll_wait(epollFd_, events, NumEvents, timeout_); - if (rv == -1) { - if (errno == EINTR) - continue; + rv = epoll_wait(epollFd_, events, NumEvents, timeout_); + if (rv == -1) { + if (errno == EINTR) + rv = 0; + else SENF_THROW_SYSTEM_EXCEPTION("epoll_wait()"); - } - break; } return boost::make_iterator_range( boost::make_transform_iterator(events, GetPollResult()),