diff options
| -rw-r--r-- | Changes | 2 | ||||
| -rw-r--r-- | ev.c | 6 | ||||
| -rw-r--r-- | ev.pod | 7 | 
3 files changed, 10 insertions, 5 deletions
| @@ -1,9 +1,7 @@  Revision history for libev, a high-performance and full-featured event loop.  TODO: ABI??? API????? Changes??? -TODO: win32 write() to socket for signal handling  TODO: EV_USE__XXX default with config, document -TODO: portbality section, solaris errno rrentrant, aix, win32, linux 32 bit  TODO: include ev_xyz_start in each example?  TODO: section watcher states/lifetime  	- "PORTING FROM LIBEV 3.X TO 4.X" (in ev.pod) is recommended reading. @@ -1283,6 +1283,11 @@ 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);        errno = old_errno; @@ -1306,6 +1311,7 @@ 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 */        read (evpipe [0], &dummy, 1);      } @@ -4443,7 +4443,7 @@ a loop.  All that's left is C<select>, and of course Apple found a way to fuck this  one up as well: On OS/X, C<select> actively limits the number of file -descriptors you can pass in to 1024 - your program suddenyl crashes when +descriptors you can pass in to 1024 - your program suddenly crashes when  you use more.  There is an undocumented "workaround" for this - defining @@ -4470,8 +4470,9 @@ freezes or you get a large number of spurious wakeups, make sure you have  all the relevant and latest kernel patches applied. No, I don't know which  ones, but there are multiple ones. -If you can't get it to work, you can try running the program with -C<LIBEV_FLAGS=3> to only allow C<poll> and C<select> backends. +If you can't get it to work, you can try running the program by setting +the environment variable C<LIBEV_FLAGS=3> to only allow C<poll> and +C<select> backends.  =head2 AIX POLL BUG | 
