summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2012-10-01 17:54:59 -0400
committerRay Strode <rstrode@redhat.com>2012-10-01 17:58:00 -0400
commitc32fef1406287ed324b1223837e7e7a539b86866 (patch)
treebe6f79f1a609ab41d7fc0447783179f00d3a3354
parent189cd818bf1592b5b8607793575bcf4e71ba8008 (diff)
downloadgdm-c32fef1406287ed324b1223837e7e7a539b86866.tar.gz
slave: don't delete initial-setup user until after initial-setup is finished
-rw-r--r--daemon/gdm-simple-slave.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/daemon/gdm-simple-slave.c b/daemon/gdm-simple-slave.c
index c9ffdc2c..b0c5e5fe 100644
--- a/daemon/gdm-simple-slave.c
+++ b/daemon/gdm-simple-slave.c
@@ -115,6 +115,8 @@ static void gdm_simple_slave_open_reauthentication_channel (GdmSlave
gpointer user_data,
GCancellable *cancellable);
+static gboolean wants_initial_setup (GdmSimpleSlave *slave);
+static void destroy_initial_setup_user (GdmSimpleSlave *slave);
G_DEFINE_TYPE (GdmSimpleSlave, gdm_simple_slave, GDM_TYPE_SLAVE)
static void create_new_session (GdmSimpleSlave *slave);
@@ -842,6 +844,9 @@ on_greeter_environment_session_stopped (GdmLaunchEnvironment *greeter_environmen
if (slave->priv->start_session_service_name == NULL) {
gdm_slave_stop (GDM_SLAVE (slave));
} else {
+ if (wants_initial_setup (slave)) {
+ destroy_initial_setup_user (slave);
+ }
start_session (slave);
}
@@ -1211,7 +1216,6 @@ start_initial_setup (GdmSimpleSlave *slave)
{
create_initial_setup_user (slave);
start_launch_environment (slave, INITIAL_SETUP_USERNAME, "gnome-initial-setup");
- destroy_initial_setup_user (slave);
}
static gboolean