summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Cameron <brian.cameron@sun.com>2007-08-29 19:46:42 +0000
committerBrian Cameron <bcameron@src.gnome.org>2007-08-29 19:46:42 +0000
commit408ec941e6973fbc517a57e50ce60f90b4294fe5 (patch)
tree78c00793712d007050287ffb68396319fdf5352b
parent9c62f250c3b65c003ec147e798b1b393e84b0dc2 (diff)
downloadgdm-408ec941e6973fbc517a57e50ce60f90b4294fe5.tar.gz
Fix bug with ConsoleKit that occurs when the session is going to migrate.
2007-08-29 Brian Cameron <brian.cameron@sun.com> * daemon/slave.c: Fix bug with ConsoleKit that occurs when the session is going to migrate. Previous code was failing to send the notification when the greeter is not TYPE_FLEXI. Fixes bug #461056. Patch by Ian Jackson <iwj@ubuntu.com> svn path=/trunk/; revision=5201
-rw-r--r--ChangeLog11
-rw-r--r--daemon/slave.c12
2 files changed, 14 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index d08889ef..ece2751f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-08-29 Brian Cameron <brian.cameron@sun.com>
+
+ * daemon/slave.c: Fix bug with ConsoleKit that occurs when
+ the session is going to migrate. Previous code was failing
+ to send the notification when the greeter is not TYPE_FLEXI.
+ Fixes bug #461056. Patch by Ian Jackson <iwj@ubuntu.com>
+
2007-08-28 Brian Cameron <brian.cameron@sun.com>
* gui/greeter/greeter_canvas_item.c: Set invisible character to '*' if
@@ -619,8 +626,8 @@
* daemon/misc.c: In gdm_fdgetc must used an unsigned char buffer here
because the GUI sends username/password data as utf8 and the daemon
will interpret any character sent with its high bit set as EOF
- unless we used unsigned here. Patch by Lo\357c Minier
- <lool+gnome@via.ecp.fr>
+ unless we used unsigned here. Fixes bug #436808. Patch by
+ Lo\357c Minier <lool+gnome@via.ecp.fr>
2007-05-09 Brian Cameron <brian.cameron@sun.com>
diff --git a/daemon/slave.c b/daemon/slave.c
index 44de2e99..459aeb88 100644
--- a/daemon/slave.c
+++ b/daemon/slave.c
@@ -1344,21 +1344,19 @@ gdm_slave_check_user_wants_to_log_in (const char *user)
/* wait for a few seconds to avoid any vt changing race
*/
gdm_sleep_no_signal (1);
+ }
#ifdef WITH_CONSOLE_KIT
- unlock_ck_session (user, migrate_to);
+ unlock_ck_session (user, migrate_to);
#endif
+ gdm_slave_send_string (GDM_SOP_MIGRATE, migrate_to);
+ g_free (migrate_to);
- gdm_slave_send_string (GDM_SOP_MIGRATE, migrate_to);
- g_free (migrate_to);
-
+ if (d->type == TYPE_FLEXI) {
/* we are no longer needed so just die.
REMANAGE == ABORT here really */
gdm_slave_quick_exit (DISPLAY_REMANAGE);
}
-
- gdm_slave_send_string (GDM_SOP_MIGRATE, migrate_to);
- g_free (migrate_to);
} else {
Display *parent_dsp;