diff options
author | George Lebl <jirka@5z.com> | 2004-05-04 16:47:29 +0000 |
---|---|---|
committer | George Lebl <jirka@src.gnome.org> | 2004-05-04 16:47:29 +0000 |
commit | abda44e5dc3c484587a777cca3f116d71137e501 (patch) | |
tree | 22de802a3ae7c1c3efb3bc18ba256c2910c2b6bb | |
parent | b6cec4703cc2c047fc67f517d71dbf1bcd1d192e (diff) | |
download | gdm-abda44e5dc3c484587a777cca3f116d71137e501.tar.gz |
Don't whack the socket_conn on display_manage since that completely whacks
Tue May 04 09:47:21 2004 George Lebl <jirka@5z.com>
* daemon/display.c: Don't whack the socket_conn on display_manage
since that completely whacks out flexiserver error reporting and
breaks flexiserver. Whoops! (I should review innocent looking
patches better)
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | daemon/display.c | 18 |
2 files changed, 17 insertions, 8 deletions
@@ -1,3 +1,10 @@ +Tue May 04 09:47:21 2004 George Lebl <jirka@5z.com> + + * daemon/display.c: Don't whack the socket_conn on display_manage + since that completely whacks out flexiserver error reporting and + breaks flexiserver. Whoops! (I should review innocent looking + patches better) + 2004-04-09 John C Barstow <jbowtie@amathaine.com> * configure.in: Added "mi" (Maori) to ALL_LINGUAS. diff --git a/daemon/display.c b/daemon/display.c index a738011b..91865b97 100644 --- a/daemon/display.c +++ b/daemon/display.c @@ -164,16 +164,18 @@ gdm_display_check_loop (GdmDisplay *disp) } static void -whack_old_slave (GdmDisplay *d) +whack_old_slave (GdmDisplay *d, gboolean kill_connection) { time_t t = time (NULL); gboolean waitsleep = TRUE; - /* This should never happen I don't think, but just in case */ - if (d->socket_conn != NULL) { - GdmConnection *conn = d->socket_conn; - d->socket_conn = NULL; - gdm_connection_set_close_notify (conn, NULL, NULL); + if (kill_connection) { + /* This should never happen I don't think, but just in case */ + if (d->socket_conn != NULL) { + GdmConnection *conn = d->socket_conn; + d->socket_conn = NULL; + gdm_connection_set_close_notify (conn, NULL, NULL); + } } if (d->master_notify_fd >= 0) { @@ -267,7 +269,7 @@ gdm_display_manage (GdmDisplay *d) /* If we have an old slave process hanging around, kill it */ /* This shouldn't be a normal code path however, so it doesn't matter * that we are hanging */ - whack_old_slave (d); + whack_old_slave (d, FALSE /* kill_connection */); /* Ensure that /tmp/.ICE-unix and /tmp/.X11-unix exist and have the * correct permissions */ @@ -387,7 +389,7 @@ gdm_display_unmanage (GdmDisplay *d) /* Kill slave, this may in fact hang for a bit at least until the * slave dies, which should be ASAP though */ - whack_old_slave (d); + whack_old_slave (d, TRUE /* kill_connection */); d->dispstat = DISPLAY_DEAD; if (d->type != TYPE_LOCAL) |