From aa61e1b58d9699e238e5094888f7160ee00e7cd9 Mon Sep 17 00:00:00 2001 From: Roy Marples Date: Wed, 15 Jul 2026 16:59:24 +0100 Subject: [PATCH] Fix eloop better --- src/eloop.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/eloop.c b/src/eloop.c index 3880388b..70090551 100644 --- a/src/eloop.c +++ b/src/eloop.c @@ -236,6 +236,7 @@ eloop_event_count(const struct eloop *eloop) static int eloop_signal_kqueue(struct eloop *eloop, const int *signals, size_t nsignals) { + unsigned short cmd = nsignals == 0 ? EV_DELETE : EV_ADD; struct kevent *ke, *kep; size_t i; int err; @@ -252,8 +253,8 @@ eloop_signal_kqueue(struct eloop *eloop, const int *signals, size_t nsignals) return -1; for (i = 0; i < nsignals; i++) - EV_SET(kep++, (uintptr_t)signals[i], EVFILT_SIGNAL, - nsignals == 0 ? EV_DELETE : EV_ADD, 0, 0, NULL); + EV_SET(kep++, (uintptr_t)signals[i], EVFILT_SIGNAL, cmd, 0, 0, + NULL); err = kevent(eloop->fd, ke, (KEVENT_N)nsignals, NULL, 0, NULL); free(ke); -- 2.47.3