aboutsummaryrefslogtreecommitdiff
path: root/xwayland/xwayland.c
diff options
context:
space:
mode:
authorn3rdopolis <bluescreenavenger@gmail.com>2018-04-21 19:19:25 -0400
committerGitHub <noreply@github.com>2018-04-21 19:19:25 -0400
commita470f101c14b62b8a0c902cbd182443f401ce6d3 (patch)
tree8337c477561e4fd16143cf9afbac29511e22bc53 /xwayland/xwayland.c
parent4b2f56cc01279801641b695e071c6e5c94d78469 (diff)
xwayland: preserve the PATH variable
Some systems don't have xwayland in /usr/bin, but in other paths. wlroots was unable to find Xwayland binaries outside of standard locations
Diffstat (limited to 'xwayland/xwayland.c')
-rw-r--r--xwayland/xwayland.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/xwayland/xwayland.c b/xwayland/xwayland.c
index bdb2c0d6..04f4f6f9 100644
--- a/xwayland/xwayland.c
+++ b/xwayland/xwayland.c
@@ -103,6 +103,7 @@ static void exec_xwayland(struct wlr_xwayland *wlr_xwayland) {
}
const char *xdg_runtime = getenv("XDG_RUNTIME_DIR");
+ const char *path_var = getenv("PATH");
if (!xdg_runtime) {
wlr_log(L_ERROR, "XDG_RUNTIME_DIR is not set");
_exit(EXIT_FAILURE);
@@ -113,6 +114,7 @@ static void exec_xwayland(struct wlr_xwayland *wlr_xwayland) {
_exit(EXIT_FAILURE);
}
setenv("XDG_RUNTIME_DIR", xdg_runtime, true);
+ setenv("PATH", path_var, true);
char wayland_socket_str[16];
snprintf(wayland_socket_str, sizeof(wayland_socket_str), "%d", wlr_xwayland->wl_fd[1]);
setenv("WAYLAND_SOCKET", wayland_socket_str, true);