Messages posted on the same tick are not new

This commit is contained in:
Brick 2021-10-12 14:08:20 +01:00 committed by Sam Lantinga
parent 0789610cfb
commit 0b6a821188

View file

@ -1525,7 +1525,7 @@ WIN_PumpEvents(_THIS)
{
const Uint8 *keystate;
MSG msg;
DWORD start_ticks = GetTickCount();
DWORD end_ticks = GetTickCount() + 1;
int new_messages = 0;
if (g_WindowsEnableMessageLoop) {
@ -1549,7 +1549,7 @@ WIN_PumpEvents(_THIS)
DispatchMessage(&msg);
/* Make sure we don't busy loop here forever if there are lots of events coming in */
if (SDL_TICKS_PASSED(msg.time, start_ticks)) {
if (SDL_TICKS_PASSED(msg.time, end_ticks)) {
/* We might get a few new messages generated by the Steam overlay or other application hooks
In this case those messages will be processed before any pending input, so we want to continue after those messages.
(thanks to Peter Deayton for his investigation here)