From c092f1fe6a742bc79015efe6e485c35f49cbf473 Mon Sep 17 00:00:00 2001 From: Dominique Martinet Date: Wed, 4 Jul 2018 13:50:23 +0900 Subject: startup: move setenv WAYLAND_DISPLAY before config execs We would previously run all config commands without the environment, which would appear to work as our socket name is the default one, but wayland clients would start up in the wrong sway session. (This explains why 'sometimes' my swayidle processes wouldn't die with sway, as they weren't listening to the correct socket) --- sway/main.c | 1 + sway/server.c | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/sway/main.c b/sway/main.c index 124f9fbb..8b0b8612 100644 --- a/sway/main.c +++ b/sway/main.c @@ -416,6 +416,7 @@ int main(int argc, char **argv) { security_sanity_check(); config->active = true; + setenv("WAYLAND_DISPLAY", server.socket, true); // Execute commands until there are none left while (config->cmd_queue->length) { char *line = config->cmd_queue->items[0]; diff --git a/sway/server.c b/sway/server.c index 8106f3c8..cd15f454 100644 --- a/sway/server.c +++ b/sway/server.c @@ -143,7 +143,6 @@ void server_fini(struct sway_server *server) { void server_run(struct sway_server *server) { wlr_log(L_INFO, "Running compositor on wayland display '%s'", server->socket); - setenv("WAYLAND_DISPLAY", server->socket, true); if (!wlr_backend_start(server->backend)) { wlr_log(L_ERROR, "Failed to start backend"); wlr_backend_destroy(server->backend); -- cgit v1.2.3-54-g00ecf