Message ID | 20230301141205.514338-1-ernunes@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ui/sdl2: remove workaround forcing x11 | expand |
On Wed, Mar 01, 2023 at 03:12:05PM +0100, Erico Nunes wrote: > This workaround was put in place in the original implementation almost > 10 years ago, considering a very old SDL2 version. Currently it prevents > users to run in a wayland-only environment without manually forcing the > backend. > The SDL2 wayland backend has been supported by distributions for a very > long time (e.g. in Fedora, first available 8 years ago), and is now > considered stable and becoming the default for new SDL2 releases. > Instead of requiring the x11 backend to exist by default, let new qemu > releases run with the default chosen by the installed SDL2 version. As the comment says, it is better fixed elsewhere anyway rather than hardcoding in QEMU > > Signed-off-by: Erico Nunes <ernunes@redhat.com> > --- > ui/sdl2.c | 16 ---------------- > 1 file changed, 16 deletions(-) Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> With regards, Daniel
diff --git a/ui/sdl2.c b/ui/sdl2.c index 8cb77416af..03f353232f 100644 --- a/ui/sdl2.c +++ b/ui/sdl2.c @@ -825,22 +825,6 @@ static void sdl2_display_init(DisplayState *ds, DisplayOptions *o) assert(o->type == DISPLAY_TYPE_SDL); -#ifdef __linux__ - /* on Linux, SDL may use fbcon|directfb|svgalib when run without - * accessible $DISPLAY to open X11 window. This is often the case - * when qemu is run using sudo. But in this case, and when actually - * run in X11 environment, SDL fights with X11 for the video card, - * making current display unavailable, often until reboot. - * So make x11 the default SDL video driver if this variable is unset. - * This is a bit hackish but saves us from bigger problem. - * Maybe it's a good idea to fix this in SDL instead. - */ - if (!g_setenv("SDL_VIDEODRIVER", "x11", 0)) { - fprintf(stderr, "Could not set SDL_VIDEODRIVER environment variable\n"); - exit(1); - } -#endif - if (SDL_Init(SDL_INIT_VIDEO)) { fprintf(stderr, "Could not initialize SDL(%s) - exiting\n", SDL_GetError());
This workaround was put in place in the original implementation almost 10 years ago, considering a very old SDL2 version. Currently it prevents users to run in a wayland-only environment without manually forcing the backend. The SDL2 wayland backend has been supported by distributions for a very long time (e.g. in Fedora, first available 8 years ago), and is now considered stable and becoming the default for new SDL2 releases. Instead of requiring the x11 backend to exist by default, let new qemu releases run with the default chosen by the installed SDL2 version. Signed-off-by: Erico Nunes <ernunes@redhat.com> --- ui/sdl2.c | 16 ---------------- 1 file changed, 16 deletions(-)