]> git.llucax.com Git - software/libev.git/blobdiff - ev.c
dohdohdoh
[software/libev.git] / ev.c
diff --git a/ev.c b/ev.c
index 8a09326689781cc46d8270135b2d77ca54622ec1..e09fc84ee229b1e36a8c8f61a06625dfdd2bfb35 100644 (file)
--- a/ev.c
+++ b/ev.c
@@ -613,7 +613,7 @@ int ev_loop_done;
 void ev_loop (int flags)
 {
   double block;
-  ev_loop_done = flags & EVLOOP_ONESHOT ? 1 : 0;
+  ev_loop_done = flags & (EVLOOP_ONESHOT | EVLOOP_NONBLOCK) ? 1 : 0;
 
   do
     {
@@ -742,11 +742,16 @@ evio_start (struct ev_io *w)
   ++fdchangecnt;
   array_needsize (fdchanges, fdchangemax, fdchangecnt, );
   fdchanges [fdchangecnt - 1] = fd;
+
+  if (w->fd == 9)
+    printf ("start %p:%x\n", w, w->events);//D
 }
 
 void
 evio_stop (struct ev_io *w)
 {
+  if (w->fd == 9)
+    printf ("stop  %p:%x\n", w, w->events);//D
   ev_clear ((W)w);
   if (!ev_is_active (w))
     return;