summaryrefslogtreecommitdiffhomepage
path: root/src/nxt_kqueue_engine.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nxt_kqueue_engine.c')
-rw-r--r--src/nxt_kqueue_engine.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/nxt_kqueue_engine.c b/src/nxt_kqueue_engine.c
index ecc3251e..a7a5a29e 100644
--- a/src/nxt_kqueue_engine.c
+++ b/src/nxt_kqueue_engine.c
@@ -716,6 +716,8 @@ nxt_kqueue_poll(nxt_event_engine_t *engine, nxt_msec_t timeout)
for (i = 0; i < nevents; i++) {
+ error = 0;
+
kev = &engine->u.kqueue.events[i];
nxt_debug(&engine->task,
@@ -725,12 +727,11 @@ nxt_kqueue_poll(nxt_event_engine_t *engine, nxt_msec_t timeout)
kev->ident, kev->filter, kev->flags, kev->fflags,
kev->data, kev->udata);
- error = (kev->flags & EV_ERROR);
-
- if (nxt_slow_path(error)) {
+ if (nxt_slow_path(kev->flags & EV_ERROR)) {
nxt_alert(&engine->task,
"kevent(%d) error %E on ident:%d filter:%d",
engine->u.kqueue.fd, kev->data, kev->ident, kev->filter);
+ error = 1;
}
task = &engine->task;