diff -u b/x2goserver/bin/x2goruncommand b/x2goserver/bin/x2goruncommand
--- b/x2goserver/bin/x2goruncommand
+++ b/x2goserver/bin/x2goruncommand
@@ -116,12 +116,15 @@
 			# Try to set a reasonable XDG_CURRENT_DESKTOP.
 			# gnome-session will overwrite this, but on recent Ubuntu, some helpers are started by upstart instead of gnome-session.
 			# DesktopNames field is ;-separated. XDG_CURRENT_DESKTOP should be :-separated.
-			export XDG_CURRENT_DESKTOP="$(sed -n '/^DesktopNames=/ { s/^DesktopNames=//; s/;/:/g; s/:$//; p; }' "$session_desktop")"
+			desktopname="$(sed -n '/^DesktopNames=/ { s/^DesktopNames=//; s/;/:/g; s/:$//; p; }' "$session_desktop")"
 			# Before DesktopNames was standardized, a few Ubuntu releases used X-LightDM-DesktopName.
-			if [ -z "$XDG_CURRENT_DESKTOP" ]; then
-				export XDG_CURRENT_DESKTOP="$(sed -n 's/^X-LightDM-DesktopName=//p' "$session_desktop")"
+			if [ -z "$desktopname" ]; then
+				desktopname="$(sed -n 's/^X-LightDM-DesktopName=//p' "$session_desktop")"
+			fi
+			# Only export the variable if set by some session file.
+			if [ -n "$desktopname" ]; then
+				export XDG_CURRENT_DESKTOP="$desktopname"
 			fi
-
 			break
 		fi
 	done
