diff options
author | Brian Cameron <Brian.Cameron@Sun.Com> | 2005-02-14 23:12:35 +0000 |
---|---|---|
committer | Brian Cameron <bcameron@src.gnome.org> | 2005-02-14 23:12:35 +0000 |
commit | 6ad0535aae7ff3ac3012ede39b1d92aac99960e4 (patch) | |
tree | 0f391c60f55499fb78ff71554ead5006767aa1c2 /daemon | |
parent | 48295502ccd13619eea1fe2780e8a06fd4e5b301 (diff) | |
download | gdm-6ad0535aae7ff3ac3012ede39b1d92aac99960e4.tar.gz |
Fix for bug #160068. Patch provided by Mark McLoughlin.
Thu Feb 14 17:10:00 2005 Brian Cameron <Brian.Cameron@Sun.Com>
* daemon/display.c, daemon/gdm.h, daemon/server.c,
daemon/slave.c: Fix for bug #160068. Patch
provided by Mark McLoughlin.
Diffstat (limited to 'daemon')
-rw-r--r-- | daemon/display.c | 3 | ||||
-rw-r--r-- | daemon/gdm.h | 2 | ||||
-rw-r--r-- | daemon/server.c | 1 | ||||
-rw-r--r-- | daemon/slave.c | 36 |
4 files changed, 12 insertions, 30 deletions
diff --git a/daemon/display.c b/daemon/display.c index a40ef3b5..5a6da48f 100644 --- a/daemon/display.c +++ b/daemon/display.c @@ -59,9 +59,6 @@ gdm_display_check_loop (GdmDisplay *disp) now = time (NULL); - if (disp->disabled) - return FALSE; - gdm_debug ("loop check: last_start %ld, last_loop %ld, now: %ld, retry_count: %d", (long)disp->last_start_time, (long) disp->last_loop_start_time, (long) now, disp->retry_count); if (disp->last_loop_start_time > now || disp->last_loop_start_time == 0) diff --git a/daemon/gdm.h b/daemon/gdm.h index 941c9ac3..d43ac4ac 100644 --- a/daemon/gdm.h +++ b/daemon/gdm.h @@ -382,8 +382,6 @@ struct _GdmDisplay { gboolean try_different_greeter; - gboolean disabled; - gboolean logged_in; /* TRUE if someone is logged in */ char *login; diff --git a/daemon/server.c b/daemon/server.c index da46b27f..ca8d7b94 100644 --- a/daemon/server.c +++ b/daemon/server.c @@ -1364,7 +1364,6 @@ gdm_server_alloc (gint id, const gchar *command) d->last_loop_start_time = 0; d->last_start_time = 0; d->retry_count = 0; - d->disabled = FALSE; d->sleep_before_run = 0; d->login = NULL; diff --git a/daemon/slave.c b/daemon/slave.c index 88eb13d9..7c543b44 100644 --- a/daemon/slave.c +++ b/daemon/slave.c @@ -202,8 +202,7 @@ static void gdm_slave_exit (gint status, const gchar *format, ...) G_GNUC_PR static void gdm_child_exit (gint status, const gchar *format, ...) G_GNUC_PRINTF (2, 3); static gint gdm_slave_exec_script (GdmDisplay *d, const gchar *dir, const char *login, struct passwd *pwent, - gboolean pass_stdout, - gboolean set_parent); + gboolean pass_stdout); static gchar * gdm_parse_enriched_login (const gchar *s, GdmDisplay *display); static void gdm_slave_handle_usr2_message (void); static void gdm_slave_handle_notify (const char *msg); @@ -928,8 +927,7 @@ setup_automatic_session (GdmDisplay *display, const char *name) /* Run the init script. gdmslave suspends until script * has terminated */ gdm_slave_exec_script (display, GdmDisplayInit, NULL, NULL, - FALSE /* pass_stdout */, - TRUE /* set_parent */); + FALSE /* pass_stdout */); gdm_debug ("setup_automatic_session: DisplayInit script finished"); @@ -2446,8 +2444,7 @@ gdm_slave_greeter (void) /* Run the init script. gdmslave suspends until script has terminated */ gdm_slave_exec_script (d, GdmDisplayInit, NULL, NULL, - FALSE /* pass_stdout */, - TRUE /* set_parent */); + FALSE /* pass_stdout */); /* Open a pipe for greeter communications */ if G_UNLIKELY (pipe (pipe1) < 0) @@ -2938,8 +2935,7 @@ gdm_slave_chooser (void) /* Run the init script. gdmslave suspends until script has terminated */ gdm_slave_exec_script (d, GdmDisplayInit, NULL, NULL, - FALSE /* pass_stdout */, - TRUE /* set_parent */); + FALSE /* pass_stdout */); /* Fork. Parent is gdmslave, child is greeter process. */ gdm_sigchld_block_push (); @@ -3465,8 +3461,7 @@ session_child_run (struct passwd *pwent, /* Run the PreSession script */ if G_UNLIKELY (gdm_slave_exec_script (d, GdmPreSession, login, pwent, - TRUE /* pass_stdout */, - TRUE /* set_parent */) != EXIT_SUCCESS && + TRUE /* pass_stdout */) != EXIT_SUCCESS && /* ignore errors in failsafe modes */ ! failsafe) /* If script fails reset X server and restart greeter */ @@ -3876,8 +3871,7 @@ gdm_slave_session_start (void) /* Run the PostLogin script */ if G_UNLIKELY (gdm_slave_exec_script (d, GdmPostLogin, login, pwent, - TRUE /* pass_stdout */, - TRUE /* set_parent */) != EXIT_SUCCESS && + TRUE /* pass_stdout */) != EXIT_SUCCESS && /* ignore errors in failsafe modes */ ! failsafe) { gdm_verify_cleanup (d); @@ -4320,8 +4314,7 @@ gdm_slave_session_stop (gboolean run_post_session, /* Execute post session script */ gdm_debug ("gdm_slave_session_stop: Running post session script"); gdm_slave_exec_script (d, GdmPostSession, local_login, pwent, - FALSE /* pass_stdout */, - TRUE /* set_parent */); + FALSE /* pass_stdout */); } VE_IGNORE_EINTR (unlink (x_servers_file)); @@ -5079,8 +5072,7 @@ set_xnest_parent_stuff (void) static gint gdm_slave_exec_script (GdmDisplay *d, const gchar *dir, const char *login, - struct passwd *pwent, gboolean pass_stdout, - gboolean set_parent) + struct passwd *pwent, gboolean pass_stdout) { pid_t pid; char *script; @@ -5132,8 +5124,7 @@ gdm_slave_exec_script (GdmDisplay *d, const gchar *dir, const char *login, return EXIT_SUCCESS; } - if (set_parent) - create_temp_auth_file (); + create_temp_auth_file (); pid = gdm_fork_extra (); @@ -5189,8 +5180,7 @@ gdm_slave_exec_script (GdmDisplay *d, const gchar *dir, const char *login, ve_setenv ("SHELL", "/bin/sh", TRUE); } - if (set_parent) - set_xnest_parent_stuff (); + set_xnest_parent_stuff (); /* some env for use with the Pre and Post scripts */ x_servers_file = gdm_make_filename (GdmServAuthDir, @@ -5218,8 +5208,7 @@ gdm_slave_exec_script (GdmDisplay *d, const gchar *dir, const char *login, _exit (EXIT_SUCCESS); case -1: - if (set_parent) - gdm_slave_whack_temp_auth_file (); + gdm_slave_whack_temp_auth_file (); g_free (script); syslog (LOG_ERR, _("%s: Can't fork script process!"), "gdm_slave_exec_script"); return EXIT_SUCCESS; @@ -5227,8 +5216,7 @@ gdm_slave_exec_script (GdmDisplay *d, const gchar *dir, const char *login, default: gdm_wait_for_extra (&status); - if (set_parent) - gdm_slave_whack_temp_auth_file (); + gdm_slave_whack_temp_auth_file (); g_free (script); |