x11: Fix boolean/enum comparison

This could set the pending flag even if there was no state change requested, which would cause errant sync timeouts in certain situations.

(cherry picked from commit 6a3b0413dc)
This commit is contained in:
Frank Praznik
2026-05-27 12:01:03 -04:00
parent ac75a4f020
commit 402fc52af4

View File

@@ -1882,7 +1882,8 @@ static SDL_FullscreenResult X11_SetWindowFullscreenViaWM(SDL_VideoDevice *_this,
X11_XSendEvent(display, RootWindow(display, displaydata->screen), 0,
SubstructureNotifyMask | SubstructureRedirectMask, &e);
if (!!(window->flags & SDL_WINDOW_FULLSCREEN) != fullscreen) {
// Only set the pending flag if the fullscreen state actually changed.
if (((window->flags & SDL_WINDOW_FULLSCREEN) != 0) != (fullscreen != 0)) {
data->pending_operation |= X11_PENDING_OP_FULLSCREEN;
}