commit c092f1fe6a742bc79015efe6e485c35f49cbf473
parent 8cc26130a66f533a5cbb8e4833a536dd8798f833
Author: Dominique Martinet <asmadeus@codewreck.org>
Date: Wed, 4 Jul 2018 13:50:23 +0900
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)
Diffstat:
2 files changed, 1 insertion(+), 1 deletion(-)
diff --git 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
@@ -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);