]> www.fi.muni.cz Git - evince.git/commitdiff
Check for avail. EvWindows when quiting to handle the finalize better,
authorJonathan Blandford <jrb@redhat.com>
Fri, 26 Aug 2005 02:16:17 +0000 (02:16 +0000)
committerJonathan Blandford <jrb@src.gnome.org>
Fri, 26 Aug 2005 02:16:17 +0000 (02:16 +0000)
Thu Aug 25 22:13:08 2005  Jonathan Blandford  <jrb@redhat.com>

        * shell/ev-window.c (ev_window_finalize): Check for
        avail. EvWindows when quiting to handle the finalize better,
        #314497

ChangeLog
shell/ev-window.c

index 069b0aa4ad6d7f97ec736e2b906366a8a7c72c3a..bbd799fa8641a7333b913955a6a940414a8a7634 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Aug 25 22:13:08 2005  Jonathan Blandford  <jrb@redhat.com>
+
+       * shell/ev-window.c (ev_window_finalize): Check for
+       avail. EvWindows when quiting to handle the finalize better,
+       #314497
+
 2005-08-26  Nickolay V. Shmyrev  <nshmyrev@yandex.ru>
        
        * properties/ev-properties-view.c: 
index 0c8139a55846f4545cbc253026774395ba287a4e..c634a07b7149e9afdd0ea8e6932ddeb7c743ad76 100644 (file)
@@ -2745,14 +2745,23 @@ zoom_control_changed_cb (EphyZoomAction *action,
 static void
 ev_window_finalize (GObject *object)
 {
-       GList *windows = gtk_window_list_toplevels ();
+       gboolean empty = TRUE;
+       GList *list, *windows;
 
-       if (windows == NULL) {
-               ev_application_shutdown (EV_APP);
-       } else {
-               g_list_free (windows);
-       }
 
+       windows = gtk_window_list_toplevels ();
+
+       for (list = windows; list; list = list->next) {
+               if (EV_IS_WINDOW (list->data)) {
+                       empty = FALSE;
+                       break;
+               }
+       }
+       
+       if (empty)
+               ev_application_shutdown (EV_APP);
+       
+       g_list_free (windows);
        G_OBJECT_CLASS (ev_window_parent_class)->finalize (object);
 }