gdm r6041 - in trunk: . daemon



Author: mccann
Date: Tue Mar 18 22:36:59 2008
New Revision: 6041
URL: http://svn.gnome.org/viewvc/gdm?rev=6041&view=rev

Log:
2008-03-18  William Jon McCann  <jmccann redhat com>

	* daemon/gdm-simple-slave.c:
	(gdm_simple_slave_accredit_when_ready), (start_session_timeout),
	(on_session_accreditation_failed):
	Make sure to kill the simple slave after switching to an
	existing session.



Modified:
   trunk/ChangeLog
   trunk/daemon/gdm-simple-slave.c

Modified: trunk/daemon/gdm-simple-slave.c
==============================================================================
--- trunk/daemon/gdm-simple-slave.c	(original)
+++ trunk/daemon/gdm-simple-slave.c	Tue Mar 18 22:36:59 2008
@@ -217,7 +217,7 @@
 
                 username = gdm_session_direct_get_username (slave->priv->session);
 
-                ssid = gdm_slave_get_primary_session_id_for_user (slave, username);
+                ssid = gdm_slave_get_primary_session_id_for_user (GDM_SLAVE (slave), username);
                 if (ssid != NULL && ssid [0] != '\0') {
                         /* FIXME: we don't yet support refresh */
                         cred_flag = GDM_SESSION_CRED_ESTABLISH;
@@ -287,7 +287,8 @@
                         slave->priv->session = NULL;
                 }
 
-                queue_greeter_reset (slave);
+                gdm_slave_stopped (GDM_SLAVE (slave));
+
                 goto out;
         }
 
@@ -343,12 +344,15 @@
            accreditation fails */
         if (! migrated) {
                 gdm_greeter_server_problem (slave->priv->greeter_server, _("Unable establish credentials"));
-        }
+        } else {
 
-        if (slave->priv->session != NULL) {
-                gdm_session_close (GDM_SESSION (slave->priv->session));
-                g_object_unref (slave->priv->session);
-                slave->priv->session = NULL;
+                if (slave->priv->session != NULL) {
+                        gdm_session_close (GDM_SESSION (slave->priv->session));
+                        g_object_unref (slave->priv->session);
+                        slave->priv->session = NULL;
+                }
+
+                gdm_slave_stopped (GDM_SLAVE (slave));
         }
 
         queue_greeter_reset (slave);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]