From 71099149b8fc062ea0ece232ccdd9f0ee9b3588b Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Mon, 31 Jul 2023 14:38:48 -0700
Subject: [PATCH] Fall back to Xlib if XRandR isn't available
This fixes video initialization on headless systems with VNC
Fixes https://github.com/libsdl-org/SDL/issues/8054
---
src/video/x11/SDL_x11modes.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/video/x11/SDL_x11modes.c b/src/video/x11/SDL_x11modes.c
index dad39d81300f..5bf2372721be 100644
--- a/src/video/x11/SDL_x11modes.c
+++ b/src/video/x11/SDL_x11modes.c
@@ -821,8 +821,9 @@ int X11_InitModes(SDL_VideoDevice *_this)
int xrandr_major, xrandr_minor;
/* require at least XRandR v1.3 */
if (CheckXRandR(data->display, &xrandr_major, &xrandr_minor) &&
- (xrandr_major >= 2 || (xrandr_major == 1 && xrandr_minor >= 3))) {
- return X11_InitModes_XRandR(_this);
+ (xrandr_major >= 2 || (xrandr_major == 1 && xrandr_minor >= 3)) &&
+ X11_InitModes_XRandR(_this) == 0) {
+ return 0;
}
}
#endif /* SDL_VIDEO_DRIVER_X11_XRANDR */