summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiaoguang Wang <xwang@suse.com>2017-08-07 14:26:08 +0800
committerRay Strode <rstrode@redhat.com>2017-09-08 15:27:27 -0400
commit853e93be31519e143cb2bcf00d12a32f789da83f (patch)
treea2f9bfba15156d256d60274eb1252b0200787e35
parentcc7c9dc0d4a7512b641b2b3ffe2a9b651880bdbf (diff)
downloadgdm-853e93be31519e143cb2bcf00d12a32f789da83f.tar.gz
gdm-{wayland,x}-session: omit GNOME_SHELL_SESSION_MODE from environment
After a user logs out, the systemd --user session may still be running (if, say, the user session was left around in the closing state, because of pulseaudio). If that happens, new user sessions will inherit the environment of previous sessions. Some of these environment variables are already intentionally pruned, DISPLAY, XAUTHORITY, WAYLAND_SOCKET, etc. One environment variable that isn't pruned, but should be, is GNOME_SHELL_SESSION_MODE. If it lingers, users could end up in classic mode even though they picked the non-classic mode from the gear menu. This commit adds GNOME_SHELL_SESSION_MODE to the list of environment variables to prune. (minor changes to original patch and commit message from Ray Strode) https://bugzilla.gnome.org/show_bug.cgi?id=785918
-rw-r--r--daemon/gdm-wayland-session.c1
-rw-r--r--daemon/gdm-x-session.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/daemon/gdm-wayland-session.c b/daemon/gdm-wayland-session.c
index af796089..b648e9de 100644
--- a/daemon/gdm-wayland-session.c
+++ b/daemon/gdm-wayland-session.c
@@ -284,6 +284,7 @@ spawn_session (State *state,
"XAUTHORITY",
"WAYLAND_DISPLAY",
"WAYLAND_SOCKET",
+ "GNOME_SHELL_SESSION_MODE",
NULL };
g_debug ("Running wayland session");
diff --git a/daemon/gdm-x-session.c b/daemon/gdm-x-session.c
index b5c0d20c..88fe96f4 100644
--- a/daemon/gdm-x-session.c
+++ b/daemon/gdm-x-session.c
@@ -609,6 +609,7 @@ spawn_session (State *state,
"XAUTHORITY",
"WAYLAND_DISPLAY",
"WAYLAND_SOCKET",
+ "GNOME_SHELL_SESSION_MODE",
NULL };
g_debug ("Running X session");