From 2b111b43dd40090da608030fbf4a07ba789868c7 Mon Sep 17 00:00:00 2001 From: "Pierre-Loup A. Griffais" Date: Sun, 26 Jan 2020 17:51:27 -0800 Subject: [PATCH] SDL: initialize after wayland. Otherwise the input thread can start doing wayland stuff before it's safe. --- src/main.cpp | 14 +++++++------- src/wlserver.c | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 326d01d..51320fd 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -101,10 +101,15 @@ int main(int argc, char **argv) XInitThreads(); - initOutput(); - + if ( getenv("DISPLAY") != NULL ) + { + g_bIsNested = true; + } + wlserver_init(argc, argv, g_bIsNested == true ); + initOutput(); + wlserver_run(); } @@ -123,11 +128,6 @@ void startSteamCompMgr(void) void initOutput(void) { - if ( getenv("DISPLAY") != NULL ) - { - g_bIsNested = true; - } - if ( g_bIsNested == true ) { inputsdl_init(); diff --git a/src/wlserver.c b/src/wlserver.c index c7c1a9b..97bc812 100644 --- a/src/wlserver.c +++ b/src/wlserver.c @@ -112,6 +112,8 @@ const struct wlr_surface_role xwayland_surface_role = { static void xwayland_ready(struct wl_listener *listener, void *data) { + setenv("DISPLAY", wlserver.wlr.xwayland->display_name, true); + startSteamCompMgr(); } @@ -406,8 +408,6 @@ int wlserver_init(int argc, char **argv, bool bIsNested) { wlserver.wlr.xwayland = wlr_xwayland_create(wlserver.wl_display, wlserver.wlr.compositor, False); - setenv("DISPLAY", wlserver.wlr.xwayland->display_name, true); - const char *socket = wl_display_add_socket_auto(wlserver.wl_display); if (!socket) {