summaryrefslogtreecommitdiff
path: root/gtk/gtkmain.c
diff options
context:
space:
mode:
authorTim Janik <timj@gimp.org>1998-03-14 23:47:48 +0000
committerTim Janik <timj@src.gnome.org>1998-03-14 23:47:48 +0000
commitbc8e40387b2db8dc361ca2a9af39837b7985b2c8 (patch)
treef589d8e73040d2ac0c08d96a7e30b93f54703bb4 /gtk/gtkmain.c
parent566a13a6c0a22b71dfa6fc3bdfc4a69649f0a55f (diff)
downloadgtk+-bc8e40387b2db8dc361ca2a9af39837b7985b2c8.tar.gz
fixed a bug with invoking the quit handlers that could cause them to be
Sat Mar 14 10:10:46 1998 Tim Janik <timj@gimp.org> * gtk/gtkmain.c (gtk_main): fixed a bug with invoking the quit handlers that could cause them to be removed wihout being invoked.
Diffstat (limited to 'gtk/gtkmain.c')
-rw-r--r--gtk/gtkmain.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/gtk/gtkmain.c b/gtk/gtkmain.c
index d45eab5c5f..8083233141 100644
--- a/gtk/gtkmain.c
+++ b/gtk/gtkmain.c
@@ -331,16 +331,15 @@ gtk_main ()
quit_functions = g_list_remove_link (quit_functions, quit_functions);
- if ((quitf->main_level &&
- quitf->main_level != main_level) ||
- gtk_quit_invoke_function (quitf) == FALSE)
+ if ((quitf->main_level && quitf->main_level != main_level) ||
+ gtk_quit_invoke_function (quitf))
{
- g_list_free (tmp_list);
- gtk_quit_destroy (quitf);
+ reinvoke_list = g_list_prepend (reinvoke_list, quitf);
}
else
{
- reinvoke_list = g_list_prepend (reinvoke_list, quitf);
+ g_list_free (tmp_list);
+ gtk_quit_destroy (quitf);
}
}
if (reinvoke_list)