diff --git a/src/sdlwindow.cpp b/src/sdlwindow.cpp index c89e997bd3..d548165f90 100644 --- a/src/sdlwindow.cpp +++ b/src/sdlwindow.cpp @@ -187,7 +187,7 @@ void inputSDLThreadRun( void ) { bool sdlLatch_cached = g_sdlLatch.load(std::memory_order_relaxed); - if ( sdlLatch_cached == 0 && g_sdlLatch.load(std::memory_order_consume) == 0) + if ( sdlLatch_cached == 0) g_sdlLatch.wait(0); //atomic wait is guaranteed to return only if value has changed, even if underlying implementation unblocks spuriously. //https://en.cppreference.com/w/cpp/atomic/atomic/wait else {