summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbrad <brad@openbsd.org>2005-12-20 02:15:28 +0000
committerbrad <brad@openbsd.org>2005-12-20 02:15:28 +0000
commit94f6f200965f4b121f8a058a1bb0f6abf47fcc96 (patch)
tree37f31650cdb66e0d208895d6d61e1eb362844ba5
parentMake "cksum -c" grok checklists generated with cksum, sum and sysvsum. (diff)
downloadwireguard-openbsd-94f6f200965f4b121f8a058a1bb0f6abf47fcc96.tar.xz
wireguard-openbsd-94f6f200965f4b121f8a058a1bb0f6abf47fcc96.zip
do not remove kq inkernel flag before event_del gets to it;
From libevent CVS ok deraadt@
-rw-r--r--lib/libevent/kqueue.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/lib/libevent/kqueue.c b/lib/libevent/kqueue.c
index 39ed55ca966..2f7f8484238 100644
--- a/lib/libevent/kqueue.c
+++ b/lib/libevent/kqueue.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kqueue.c,v 1.18 2005/07/02 07:15:13 grunk Exp $ */
+/* $OpenBSD: kqueue.c,v 1.19 2005/12/20 02:15:28 brad Exp $ */
/*
* Copyright 2000-2002 Niels Provos <provos@citi.umich.edu>
@@ -266,10 +266,8 @@ kq_dispatch(struct event_base *base, void *arg, struct timeval *tv)
if (!which)
continue;
- if (!(ev->ev_events & EV_PERSIST)) {
- ev->ev_flags &= ~EVLIST_X_KQINKERNEL;
+ if (!(ev->ev_events & EV_PERSIST))
event_del(ev);
- }
event_active(ev, which,
ev->ev_events & EV_SIGNAL ? events[i].data : 1);