diff options
author | Brian Cameron <brian.cameron@sun.com> | 2006-08-03 16:42:41 +0000 |
---|---|---|
committer | Brian Cameron <bcameron@src.gnome.org> | 2006-08-03 16:42:41 +0000 |
commit | e39aae08a4ce0b761697c37eb9c3faaf366cb869 (patch) | |
tree | c7783e1246795bdd9f56392102e41b1c8f122f99 | |
parent | d86802fce9a00cc69b77a566c87792624bcfd835 (diff) | |
download | gdm-e39aae08a4ce0b761697c37eb9c3faaf366cb869.tar.gz |
Fix the setup of the iochannel so that it happens after the face browser
2006-08-03 Brian Cameron <brian.cameron@sun.com>
* gui/greeter/greeter.c: Fix the setup of the iochannel so that
it happens after the face browser is set up. The recent changes
Ray Strode made to make the message input nonblocking seemed
to break the Face Browser logic. This patch makes sure that
the face browser is setup before setting up the iochannel. The
face data is sent from the daemon to the slave along the same
channel, but these messages are not formatted like the other
messages. Patch provided by Ray Strode <rstrode@redhat.com>.
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | gui/greeter/greeter.c | 28 |
2 files changed, 25 insertions, 14 deletions
@@ -1,3 +1,14 @@ +2006-08-03 Brian Cameron <brian.cameron@sun.com> + + * gui/greeter/greeter.c: Fix the setup of the iochannel so that + it happens after the face browser is set up. The recent changes + Ray Strode made to make the message input nonblocking seemed + to break the Face Browser logic. This patch makes sure that + the face browser is setup before setting up the iochannel. The + face data is sent from the daemon to the slave along the same + channel, but these messages are not formatted like the other + messages. Patch provided by Ray Strode <rstrode@redhat.com>. + 2006-08-02 Brian Cameron <brian.cameron@sun.com> * daemon/gdm.c: Fix error message that gets printed when diff --git a/gui/greeter/greeter.c b/gui/greeter/greeter.c index d642b7c6..52008a5d 100644 --- a/gui/greeter/greeter.c +++ b/gui/greeter/greeter.c @@ -1122,20 +1122,6 @@ main (int argc, char *argv[]) gdm_common_fail_greeter ("Could not set signal mask!"); } - if G_LIKELY (! DOING_GDM_DEVELOPMENT) { - ctrlch = g_io_channel_unix_new (STDIN_FILENO); - g_io_channel_set_encoding (ctrlch, NULL, NULL); - g_io_channel_set_buffered (ctrlch, TRUE); - g_io_channel_set_flags (ctrlch, - g_io_channel_get_flags (ctrlch) | G_IO_FLAG_NONBLOCK, - NULL); - g_io_add_watch (ctrlch, - G_IO_IN | G_IO_PRI | G_IO_ERR | G_IO_HUP | G_IO_NVAL, - (GIOFunc) greeter_ctrl_handler, - NULL); - g_io_channel_unref (ctrlch); - } - window = gtk_window_new (GTK_WINDOW_TOPLEVEL); if G_UNLIKELY (DOING_GDM_DEVELOPMENT) { @@ -1322,6 +1308,20 @@ main (int argc, char *argv[]) greeter_setup_items (); + if G_LIKELY (! DOING_GDM_DEVELOPMENT) { + ctrlch = g_io_channel_unix_new (STDIN_FILENO); + g_io_channel_set_encoding (ctrlch, NULL, NULL); + g_io_channel_set_buffered (ctrlch, TRUE); + g_io_channel_set_flags (ctrlch, + g_io_channel_get_flags (ctrlch) | G_IO_FLAG_NONBLOCK, + NULL); + g_io_add_watch (ctrlch, + G_IO_IN | G_IO_PRI | G_IO_ERR | G_IO_HUP | G_IO_NVAL, + (GIOFunc) greeter_ctrl_handler, + NULL); + g_io_channel_unref (ctrlch); + } + gdm_common_setup_blinking (); gtk_widget_show_all (window); |