aboutsummaryrefslogtreecommitdiff
path: root/seatd/poller.c
diff options
context:
space:
mode:
Diffstat (limited to 'seatd/poller.c')
-rw-r--r--seatd/poller.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/seatd/poller.c b/seatd/poller.c
index 267929b..ceadb24 100644
--- a/seatd/poller.c
+++ b/seatd/poller.c
@@ -315,8 +315,10 @@ int poller_poll(struct poller *poller) {
poller->dirty = false;
}
- if (poll(poller->pollfds, poller->fd_event_sources, -1) == -1 && errno != EINTR) {
- return -1;
+ while (poll(poller->pollfds, poller->fd_event_sources, -1) == -1) {
+ if (errno != EINTR) {
+ return -1;
+ }
}
dispatch(poller);