]> git.llucax.com Git - software/libev.git/blobdiff - ev.c
*** empty log message ***
[software/libev.git] / ev.c
diff --git a/ev.c b/ev.c
index 8a92fb03be15145f30d571765ae7b6eacf86f55c..3f9fe2bdd5c7f055c5ebe850f9a7ed700d6d1b03 100644 (file)
--- a/ev.c
+++ b/ev.c
@@ -927,8 +927,8 @@ ev_recommended_backends (void)
 unsigned int
 ev_embeddable_backends (void)
 {
 unsigned int
 ev_embeddable_backends (void)
 {
-  return EVBACKEND_EPOLL
-       | EVBACKEND_KQUEUE
+  /* epoll embeddability broken on all linux versions up to at least 2.6.23 */
+  return EVBACKEND_KQUEUE
        | EVBACKEND_PORT;
 }
 
        | EVBACKEND_PORT;
 }
 
@@ -2215,7 +2215,7 @@ ev_embed_start (EV_P_ ev_embed *w)
   {
     struct ev_loop *loop = w->other;
     assert (("loop to be embedded is not embeddable", backend & ev_embeddable_backends ()));
   {
     struct ev_loop *loop = w->other;
     assert (("loop to be embedded is not embeddable", backend & ev_embeddable_backends ()));
-    ev_io_init (&w->io, embed_io_cb, backend_fd, EV_WRITE);
+    ev_io_init (&w->io, embed_io_cb, backend_fd, EV_READ);
   }
 
   ev_set_priority (&w->io, ev_priority (w));
   }
 
   ev_set_priority (&w->io, ev_priority (w));