[project @ 2004-03-27 13:18:12 by panne]
[ghc-base.git] / cbits / inputReady.c
index 5b1e005..30e140b 100644 (file)
@@ -34,7 +34,7 @@ inputReady(int fd, int msecs, int isSock)
         */
        maxfd = fd + 1;
        tv.tv_sec  = msecs / 1000;
-       tv.tv_usec = msecs % 1000;
+       tv.tv_usec = (msecs % 1000) * 1000;
        
        while ((ready = select(maxfd, &rfd, NULL, NULL, &tv)) < 0 ) {
            if (errno != EINTR ) {
@@ -50,11 +50,10 @@ inputReady(int fd, int msecs, int isSock)
        DWORD rc;
        HANDLE hFile = (HANDLE)_get_osfhandle(fd);
        
-       rc = MsgWaitForMultipleObjects( 1,
-                                       &hFile,
-                                       FALSE, /* wait all */
-                                       msecs, /*millisecs*/
-                                       QS_ALLEVENTS);
+       rc = WaitForMultipleObjects( 1,
+                                    &hFile,
+                                    TRUE,   /* wait all */
+                                    msecs); /*millisecs*/
        
        /* 1 => Input ready, 0 => not ready, -1 => error */
        switch (rc) {