about summary refs log tree commit homepage
path: root/queue_kqueue.c
diff options
context:
space:
mode:
Diffstat (limited to 'queue_kqueue.c')
-rw-r--r--queue_kqueue.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/queue_kqueue.c b/queue_kqueue.c
index 9633496..c46130b 100644
--- a/queue_kqueue.c
+++ b/queue_kqueue.c
@@ -52,16 +52,11 @@ struct mog_fd * mog_idleq_wait(struct mog_queue *q, int timeout)
          * in kevent().  This allows us to wake up an respond to a
          * cancellation request (since kevent() is not a cancellation point).
          */
-        if (cancellable) {
-                check_cancel();
-                mog_intr_enable();
-        }
+        if (cancellable)
+                mog_testcancel();
 
         rc = kevent(q->queue_fd, NULL, 0, &event, 1, tsp);
 
-        if (cancellable)
-                PRESERVE_ERRNO( mog_intr_disable() );
-
         if (rc > 0) {
                 mfd = event.udata;
                 mog_fd_check_out(mfd);
@@ -70,7 +65,7 @@ struct mog_fd * mog_idleq_wait(struct mog_queue *q, int timeout)
                 return mfd;
         }
         if (cancellable)
-                check_cancel();
+                mog_testcancel();
         if (rc == 0)
                 return NULL;