summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--libs/nixio/src/poll.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libs/nixio/src/poll.c b/libs/nixio/src/poll.c
index fdec2caaf0..33cb46964c 100644
--- a/libs/nixio/src/poll.c
+++ b/libs/nixio/src/poll.c
@@ -143,7 +143,9 @@ static int nixio_poll(lua_State *L) {
lua_pop(L, 3);
}
- status = poll(fds, (nfds_t)len, timeout);
+ do {
+ status = poll(fds, (nfds_t)len, timeout);
+ } while (status == -1 && errno == EINTR);
if (status < 1) {
free(fds);