lib/PublicInbox/DS.pm | 6 +++--- diff --git a/lib/PublicInbox/DS.pm b/lib/PublicInbox/DS.pm index 0e48ed07cc380e05f811ad919f5f921966dae72b..8f77ce24b20ed5171f30720d88c83469fe2b28d7 100644 --- a/lib/PublicInbox/DS.pm +++ b/lib/PublicInbox/DS.pm @@ -321,7 +321,7 @@ if ($ev & $bit) { my $fl = EV_ADD() | EV_ENABLE(); ($ev & EPOLLONESHOT) ? ($fl|EV_ONESHOT()) : $fl; } else { - EV_DISABLE(); + EV_ADD() | EV_DISABLE(); } } @@ -364,8 +364,8 @@ die "couldn't add epoll watch for $fd: $!\n"; } } elsif ($HaveKQueue) { - $KQueue->EV_SET($fd, EVFILT_READ(), EV_ADD() | kq_flag(EPOLLIN, $ev)); - $KQueue->EV_SET($fd, EVFILT_WRITE(), EV_ADD() | kq_flag(EPOLLOUT, $ev)); + $KQueue->EV_SET($fd, EVFILT_READ(), kq_flag(EPOLLIN, $ev)); + $KQueue->EV_SET($fd, EVFILT_WRITE(), kq_flag(EPOLLOUT, $ev)); } Carp::cluck("PublicInbox::DS::new blowing away existing descriptor map for fd=$fd ($DescriptorMap{$fd})")