X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=src%2Fioset-kevent.c;h=a88970b059c4155df4fcbc631bb791210e081a7d;hb=a8386b56f6eea13514fb82f9243aa2e065b5da28;hp=02a85111d61875ab15a3d52fd0ff08ee459ee928;hpb=729f3f604b4d178e8a89345b027c28db89856a05;p=srvx.git diff --git a/src/ioset-kevent.c b/src/ioset-kevent.c index 02a8511..a88970b 100644 --- a/src/ioset-kevent.c +++ b/src/ioset-kevent.c @@ -46,9 +46,7 @@ ioset_kevent_add(struct io_fd *fd) int res; EV_SET(&changes[nchanges++], fd->fd, EVFILT_READ, EV_ADD, 0, 0, fd); - if (fd_wants_writes(fd)) { - EV_SET(&changes[nchanges++], fd->fd, EVFILT_WRITE, EV_ADD, 0, 0, fd); - } + EV_SET(&changes[nchanges++], fd->fd, EVFILT_WRITE, fd_wants_writes(fd) ? EV_ADD : EV_DELETE, 0, 0, fd); res = kevent(kq_fd, changes, nchanges, NULL, 0, NULL); if (res < 0) { log_module(MAIN_LOG, LOG_ERROR, "kevent() add failed: %s", strerror(errno));