Only clear the raw input queue status if we don't call GetRawInputBuffer()

GetRawInputBuffer() will do that for us when we read all the queued events
This commit is contained in:
Sam Lantinga 2024-03-26 15:01:19 -07:00
parent d6fc629b5b
commit 02c63667c7
2 changed files with 2 additions and 3 deletions

View File

@ -674,6 +674,8 @@ void WIN_PollRawInput(SDL_VideoDevice *_this)
/* Relative mouse motion is delivered to the window with keyboard focus */
window = SDL_GetKeyboardFocus();
if (!window) {
// Clear the queue status so MsgWaitForMultipleObjects() will wait again
(void)GetQueueStatus(QS_RAWINPUT);
return;
}
data = window->driverdata;

View File

@ -81,9 +81,6 @@ static DWORD WINAPI WIN_RawInputThread(LPVOID param)
break;
}
/* Clear the queue status so MsgWaitForMultipleObjects() will wait again */
(void)GetQueueStatus(QS_RAWINPUT);
WIN_PollRawInput(_this);
}