From: Alan T. DeKok Date: Wed, 7 Jan 2015 17:20:52 +0000 (-0500) Subject: Don't check EV_READ flag. It MUST be a read event X-Git-Tag: release_3_0_7~336 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d9826c8d75b4798de1e559adb84c7cd66fc44297;p=thirdparty%2Ffreeradius-server.git Don't check EV_READ flag. It MUST be a read event --- diff --git a/src/lib/event.c b/src/lib/event.c index 19b565bf905..6c64a250f57 100644 --- a/src/lib/event.c +++ b/src/lib/event.c @@ -630,9 +630,9 @@ int fr_event_loop(fr_event_list_t *el) * Loop over all of the events, servicing them. */ for (i = 0; i < rcode; i++) { - if (el->events[i].flags & EV_EOF) { - fr_event_fd_t *ef = el->events[i].udata; + fr_event_fd_t *ef = el->events[i].udata; + if (el->events[i].flags & EV_EOF) { /* * FIXME: delete the handler * here, and fix process.c to not @@ -646,14 +646,12 @@ int fr_event_loop(fr_event_list_t *el) continue; } - if (el->events[i].flags & EVFILT_READ) { - fr_event_fd_t *ef = el->events[i].udata; - - ef->handler(el, ef->fd, ef->ctx); - continue; - } - - /* else it's an unhandled event, which shouldn't happen */ + /* + * Else it's our event. We only set + * EVFILT_READ, so it must be a read + * event. + */ + ef->handler(el, ef->fd, ef->ctx); } #endif /* HAVE_KQUEUE */ }