Make sure to always pass valid QS_* flags to

MsgWaitForMultipleObjects.
This commit is contained in:
Alexandre Julliard 2005-03-08 17:00:38 +00:00
parent c02dd0a902
commit 7b738b7f8c
4 changed files with 12 additions and 10 deletions

View File

@ -397,7 +397,7 @@ static HRESULT WINAPI SysKeyboardAImpl_GetDeviceState(
if (len != 256)
return DIERR_INVALIDPARAM;
MsgWaitForMultipleObjectsEx(0, NULL, 0, 0, 0);
MsgWaitForMultipleObjectsEx(0, NULL, 0, QS_ALLINPUT, 0);
if (TRACE_ON(dinput)) {
int i;
@ -432,7 +432,7 @@ static HRESULT WINAPI SysKeyboardAImpl_GetDeviceData(
if (dodsize < sizeof(DIDEVICEOBJECTDATA_DX3))
return DIERR_INVALIDPARAM;
MsgWaitForMultipleObjectsEx(0, NULL, 0, 0, 0);
MsgWaitForMultipleObjectsEx(0, NULL, 0, QS_ALLINPUT, 0);
EnterCriticalSection(&(This->crit));

View File

@ -1777,7 +1777,7 @@ static void wait_message_reply( UINT flags )
if (USER_Driver.pMsgWaitForMultipleObjectsEx)
res = USER_Driver.pMsgWaitForMultipleObjectsEx( 1, &queue->server_queue,
INFINITE, 0, 0 );
INFINITE, QS_ALLINPUT, 0 );
else
res = WaitForSingleObject( queue->server_queue, INFINITE );
@ -2338,7 +2338,7 @@ BOOL WINAPI PeekMessageW( MSG *msg_out, HWND hwnd, UINT first, UINT last, UINT f
/* check for graphics events */
if (USER_Driver.pMsgWaitForMultipleObjectsEx)
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, 0, 0 );
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, QS_ALLINPUT, 0 );
hwnd = WIN_GetFullHandle( hwnd );
locks = WIN_SuspendWndsLock();
@ -2444,7 +2444,8 @@ BOOL WINAPI GetMessageW( MSG *msg, HWND hwnd, UINT first, UINT last )
ReleaseThunkLock( &dwlc );
if (USER_Driver.pMsgWaitForMultipleObjectsEx)
USER_Driver.pMsgWaitForMultipleObjectsEx( 1, &queue->server_queue, INFINITE, 0, 0 );
USER_Driver.pMsgWaitForMultipleObjectsEx( 1, &queue->server_queue, INFINITE,
QS_ALLINPUT, 0 );
else
WaitForSingleObject( queue->server_queue, INFINITE );
if (dwlc) RestoreThunkLock( dwlc );

View File

@ -514,8 +514,8 @@ static DWORD MCIAVI_mciPlay(UINT wDevID, DWORD dwFlags, LPMCI_PLAY_PARMS lpParms
delta = GetTickCount() - tc;
LeaveCriticalSection(&wma->cs);
ret = MsgWaitForMultipleObjects(2, events, FALSE,
(delta >= frameTime) ? 0 : frameTime - delta, MWMO_INPUTAVAILABLE);
ret = MsgWaitForMultipleObjectsEx(2, events,
(delta >= frameTime) ? 0 : frameTime - delta, QS_ALLINPUT, MWMO_INPUTAVAILABLE);
EnterCriticalSection(&wma->cs);
if (ret == WAIT_OBJECT_0 || wma->dwStatus != MCI_MODE_PLAY) break;
@ -527,7 +527,8 @@ static DWORD MCIAVI_mciPlay(UINT wDevID, DWORD dwFlags, LPMCI_PLAY_PARMS lpParms
DWORD ret;
LeaveCriticalSection(&wma->cs);
ret = MsgWaitForMultipleObjects(1, &wma->hStopEvent, FALSE, frameTime - delta, MWMO_INPUTAVAILABLE);
ret = MsgWaitForMultipleObjectsEx(1, &wma->hStopEvent, frameTime - delta,
QS_ALLINPUT, MWMO_INPUTAVAILABLE);
EnterCriticalSection(&wma->cs);
if (ret == WAIT_OBJECT_0) break;
}

View File

@ -146,7 +146,7 @@ DWORD WINAPI GetQueueStatus( UINT flags )
/* check for pending X events */
if (USER_Driver.pMsgWaitForMultipleObjectsEx)
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, 0, 0 );
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, QS_ALLINPUT, 0 );
SERVER_START_REQ( get_queue_status )
{
@ -168,7 +168,7 @@ BOOL WINAPI GetInputState(void)
/* check for pending X events */
if (USER_Driver.pMsgWaitForMultipleObjectsEx)
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, 0, 0 );
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, QS_INPUT, 0 );
SERVER_START_REQ( get_queue_status )
{