diff options
Diffstat (limited to 'daemon/slave.c')
-rw-r--r-- | daemon/slave.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/daemon/slave.c b/daemon/slave.c index 96dc1652..77bfebee 100644 --- a/daemon/slave.c +++ b/daemon/slave.c @@ -78,7 +78,9 @@ static gboolean do_restart_greeter = FALSE; /* if this is true, whack the greeter and try again */ static gboolean restart_greeter_now = FALSE; /* restart_greeter_when the SIGCHLD hits */ -static gboolean check_notifies_immediately = 0; /* check notifies as they come */ +static int check_notifies_immediately = 0; /* check notifies as they come */ +static gboolean gdm_wait_for_ack = TRUE; /* wait for ack on all messages to + * the daemon */ static gboolean greeter_disabled = FALSE; static gboolean greeter_no_focus = FALSE; @@ -1659,6 +1661,9 @@ gdm_slave_send (const char *str, gboolean wait_for_ack) int i; uid_t old; + if ( ! gdm_wait_for_ack) + wait_for_ack = FALSE; + if (gdm_in_signal == 0) gdm_debug ("Sending %s", str); @@ -2951,6 +2956,7 @@ static void gdm_slave_term_handler (int sig) { gdm_in_signal++; + gdm_wait_for_ack = FALSE; gdm_debug ("gdm_slave_term_handler: %s got TERM/INT signal", d->name); |