]> git.llucax.com Git - software/libev.git/blobdiff - ev_win32.c
implement EVFLAG_FORKCHECK
[software/libev.git] / ev_win32.c
index 5821128921c01a43e5b642e781a5c3f8d9e7a821..e95969d99845d9424ff0c340b7970dfca6124d79 100644 (file)
@@ -29,7 +29,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifdef WIN32
+#ifdef _WIN32
 
 #include <sys/timeb.h>
 
@@ -73,8 +73,15 @@ ev_pipe (int filedes [2])
 
   closesocket (listener);
 
+#if EV_SELECT_IS_WINSOCKET
+  filedes [0] = _open_osfhandle (sock [0], 0);
+  filedes [1] = _open_osfhandle (sock [1], 0);
+#else
+  /* when select isn't winsocket, we also expect socket, connect, accept etc.
+   * to work on fds */
   filedes [0] = sock [0];
   filedes [1] = sock [1];
+#endif
 
   return 0;
 
@@ -104,6 +111,7 @@ ev_gettimeofday (struct timeval *tv, struct timezone *tz)
 }
 
 #undef gettimeofday
-#define gettimeofdy(tv,tz) ev_gettimeofday (tv, tz)
+#define gettimeofday(tv,tz) ev_gettimeofday (tv, tz)
 
 #endif
+