From e5ffd512cc5e2b633be9c51d20c9a79cddf0aa53 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Sat, 20 Oct 2001 10:37:56 +0000 Subject: Repeatedly call gtk_main_quit here as long as there is a main loop around. 2001-10-20 Christopher James Lahey * gui/component/addressbook-component.c (owner_unset_cb): Repeatedly call gtk_main_quit here as long as there is a main loop around. This is an ugly hack around Ximian bug #11760. svn path=/trunk/; revision=13821 --- addressbook/ChangeLog | 6 ++++++ addressbook/gui/component/addressbook-component.c | 12 ++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog index 301c492dcf..f7ab9730b6 100644 --- a/addressbook/ChangeLog +++ b/addressbook/ChangeLog @@ -1,3 +1,9 @@ +2001-10-20 Christopher James Lahey + + * gui/component/addressbook-component.c (owner_unset_cb): + Repeatedly call gtk_main_quit here as long as there is a main loop + around. This is an ugly hack around Ximian bug #11760. + 2001-10-20 Christopher James Lahey * gui/component/select-names/e-select-names.c: Added #include diff --git a/addressbook/gui/component/addressbook-component.c b/addressbook/gui/component/addressbook-component.c index b9f0a57e27..c0f834f08c 100644 --- a/addressbook/gui/component/addressbook-component.c +++ b/addressbook/gui/component/addressbook-component.c @@ -264,14 +264,22 @@ owner_set_cb (EvolutionShellComponent *shell_component, addressbook_storage_setup (shell_component, evolution_homedir); } +static gboolean +gtk_main_quit_cb (gpointer closure) +{ + gtk_main_quit (); + return TRUE; +} + static void owner_unset_cb (EvolutionShellComponent *shell_component, GNOME_Evolution_Shell shell_interface, gpointer user_data) { owner_count --; - if (owner_count == 0) - gtk_main_quit(); + if (owner_count == 0) { + g_idle_add (gtk_main_quit_cb, NULL); + } } /* FIXME We should perhaps take the time to figure out if the book is editable. */ -- cgit v1.2.3