--- libev/ev.c 2007/11/06 16:51:20 1.74 +++ libev/ev.c 2007/11/06 19:29:20 1.75 @@ -543,7 +543,11 @@ { int old_errno = errno; gotsig = 1; +#ifdef WIN32 + send (sigpipe [1], &signum, 1, MSG_DONTWAIT); +#else write (sigpipe [1], &signum, 1); +#endif errno = old_errno; } } @@ -554,7 +558,11 @@ WL w; int signum; +#ifdef WIN32 + recv (sigpipe [0], &revents, 1, MSG_DONTWAIT); +#else read (sigpipe [0], &revents, 1); +#endif gotsig = 0; for (signum = signalmax; signum--; )