Browse Source

Libev windows fixes

v0.7.4-release
Bert Belder 14 years ago
committed by Ryan Dahl
parent
commit
b9540c28e9
  1. 18
      deps/libev/ev.c

18
deps/libev/ev.c

@ -984,7 +984,6 @@ fd_reify (EV_P)
unsigned long arg;
anfd->handle = EV_FD_TO_WIN32_HANDLE (fd);
assert (("libev: only socket fds supported in this configuration", ioctlsocket (anfd->handle, FIONREAD, &arg) == 0));
printf ("oi %d %x\n", fd, anfd->handle);//D
}
#endif
@ -1313,12 +1312,12 @@ evpipe_write (EV_P_ EV_ATOMIC_T *flag)
}
else
#endif
/* win32 people keep sending patches that change this write() to send() */
/* and then run away. but send() is wrong, it wants a socket handle on win32 */
/* so when you think this write should be a send instead, please find out */
/* where your send() is from - it's definitely not the microsoft send, and */
/* tell me. thank you. */
write (evpipe [1], &dummy, 1);
#ifdef __MINGW32__
send(EV_FD_TO_WIN32_HANDLE(evpipe [1]), &dummy, 1, 0);
#else
write (evpipe [1], &dummy, 1);
#endif
errno = old_errno;
}
@ -1341,8 +1340,11 @@ pipecb (EV_P_ ev_io *iow, int revents)
#endif
{
char dummy;
/* see discussion in evpipe_write when you think this read should be recv in win32 */
#ifdef __MINGW32__
recv(EV_FD_TO_WIN32_HANDLE(evpipe [0]), &dummy, 1, 0);
#else
read (evpipe [0], &dummy, 1);
#endif
}
if (sig_pending)

Loading…
Cancel
Save