diff --git a/os/WaitFor.c b/os/WaitFor.c index a4b95cba2..545e1be21 100644 --- a/os/WaitFor.c +++ b/os/WaitFor.c @@ -350,6 +350,13 @@ WaitForSomething(int *pClientsReady) #endif if (XFD_ANYSET (&devicesReadable) || XFD_ANYSET (&clientsReadable)) break; +#ifdef WIN32 + /* Windows keyboard and mouse events are added to the input queue + in Block- and WakupHandlers. There is no device to check if + data is ready. So check here if new input is available */ + if (*checkForInput[0] != *checkForInput[1]) + return 0; +#endif } }