summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2015-03-04 12:33:12 -0500
committerRay Strode <rstrode@redhat.com>2015-03-10 13:11:10 -0400
commit095c3a9dee18ac5dbaa9bf677104858e0ecdaecc (patch)
tree4ab59cd0f8c96a3c705d0431804fe9d7335d0d58
parente06ea3c3fdb3c0cc58d689d2323fb29285e7b976 (diff)
downloadgdm-095c3a9dee18ac5dbaa9bf677104858e0ecdaecc.tar.gz
worker: kill session on SIGTERM
I guess in the past the session has implicitly gone away when the display goes away, but now that the display is started implicitly by the session that isn't really true anymore. We need to explicitly kill the session when gdm is shutting down. https://bugzilla.gnome.org/show_bug.cgi?id=745975
-rw-r--r--daemon/gdm-session-worker.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/daemon/gdm-session-worker.c b/daemon/gdm-session-worker.c
index 4c69da22..ec413515 100644
--- a/daemon/gdm-session-worker.c
+++ b/daemon/gdm-session-worker.c
@@ -3348,6 +3348,11 @@ gdm_session_worker_finalize (GObject *object)
gdm_session_worker_unwatch_child (worker);
+ if (worker->priv->child_pid > 0) {
+ gdm_signal_pid (worker->priv->child_pid, SIGTERM);
+ gdm_wait_on_pid (worker->priv->child_pid);
+ }
+
g_object_unref (worker->priv->user_settings);
g_free (worker->priv->service);
g_free (worker->priv->x11_display_name);