summaryrefslogtreecommitdiff
path: root/daemon/gdm-x-session.c
diff options
context:
space:
mode:
Diffstat (limited to 'daemon/gdm-x-session.c')
-rw-r--r--daemon/gdm-x-session.c25
1 files changed, 8 insertions, 17 deletions
diff --git a/daemon/gdm-x-session.c b/daemon/gdm-x-session.c
index 412999cf..3b2fcef4 100644
--- a/daemon/gdm-x-session.c
+++ b/daemon/gdm-x-session.c
@@ -810,21 +810,6 @@ on_sigterm (State *state)
return G_SOURCE_CONTINUE;
}
-static gboolean
-on_registration_delay_complete (State *state)
-{
- gboolean ret;
-
- ret = register_display (state, state->cancellable);
-
- if (!ret) {
- g_printerr ("Unable to register display with display manager\n");
- g_main_loop_quit (state->main_loop);
- }
-
- return G_SOURCE_REMOVE;
-}
-
int
main (int argc,
char **argv)
@@ -911,6 +896,14 @@ main (int argc,
goto out;
}
+ ret = register_display (state, state->cancellable);
+
+ if (!ret) {
+ g_printerr ("Unable to register display with display manager\n");
+ exit_status = EX_SOFTWARE;
+ goto out;
+ }
+
ret = spawn_session (state, run_script, state->cancellable);
if (!ret) {
@@ -919,8 +912,6 @@ main (int argc,
goto out;
}
- g_timeout_add_seconds (2, (GSourceFunc) on_registration_delay_complete, state);
-
g_main_loop_run (state->main_loop);
/* Only use exit status of session if we're here because it exit */