[gdm] daemon: don't kill remote session slave at login
- From: Ray Strode <halfline src gnome org>
- To: commits-list gnome org
- Cc: 
- Subject: [gdm] daemon: don't kill remote session slave at login
- Date: Fri, 20 Jul 2012 18:09:39 +0000 (UTC)
commit e7b3beb03459fd6b5b774694f7e0bb8fc5e58716
Author: Ray Strode <rstrode redhat com>
Date:   Fri Jul 20 13:46:19 2012 -0400
    daemon: don't kill remote session slave at login
    
    When a user disconnects from an XDMCP session we need
    to clean it up the associated slave.
    
    The function that did that was also erroneously cleaning up
    the slave when the greeter disconnected following the user
    successfully typing their password.
    
    This commit guards against the latter problem by checking if
    the session is started before deciding whether or not to
    kill the slave.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=680314
 daemon/gdm-simple-slave.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
---
diff --git a/daemon/gdm-simple-slave.c b/daemon/gdm-simple-slave.c
index 5f1ac1a..17bc14f 100644
--- a/daemon/gdm-simple-slave.c
+++ b/daemon/gdm-simple-slave.c
@@ -574,7 +574,7 @@ on_session_client_disconnected (GdmSession          *session,
                       "display-is-local", &display_is_local,
                       NULL);
 
-        if ( ! display_is_local) {
+        if ( ! display_is_local && !slave->priv->session_is_running) {
                 gdm_slave_stopped (GDM_SLAVE (slave));
         }
 }
@@ -1254,6 +1254,9 @@ gdm_simple_slave_stop (GdmSlave *slave)
                 gdm_simple_slave_revoke_console_permissions (self);
 #endif
 
+        }
+
+        if (self->priv->session != NULL) {
                 gdm_session_close (self->priv->session);
                 g_clear_object (&self->priv->session);
         }
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]