]> www.fi.muni.cz Git - evince.git/commitdiff
Cleanup links job on exit
authorNickolay V. Shmyrev <nshmyrev@src.gnome.org>
Mon, 6 Jun 2005 23:37:15 +0000 (23:37 +0000)
committerNickolay V. Shmyrev <nshmyrev@src.gnome.org>
Mon, 6 Jun 2005 23:37:15 +0000 (23:37 +0000)
ChangeLog
shell/ev-sidebar-links.c

index 7dd1057777ea661efddae025d6abef23e9f90edc..5612ca13f4cb0d9287d0bc9c17c73cf5b6f7a8c0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2005-06-07  Nickolay V. Shmyrev  <<nshmyrev@yandex.ru>>
+
+       * shell/ev-sidebar-links.c: (ev_sidebar_links_dispose):
+
+       Cleanup links job on exit.
+
 2005-06-07  Nickolay V. Shmyrev  <nshmyrev@yandex.ru>
 
        * cut-n-paste/toolbar-editor/egg-editable-toolbar.c:
index ac34bac4f2484edbf06a680f84a2e4e131899d03..688200732fc77c742f2d68c8f0b1b470856a2957 100644 (file)
@@ -67,6 +67,8 @@ static void row_activated_callback                    (GtkTreeView *treeview,
                                                         GtkTreePath *arg1,
                                                         GtkTreeViewColumn *arg2,
                                                         gpointer user_data);
+static void job_finished_callback                      (EvJobLinks     *job,
+                                                        EvSidebarLinks *sidebar_links);
 static void ev_sidebar_links_page_iface_init           (EvSidebarPageIface *iface);
 static void ev_sidebar_links_set_document                      (EvSidebarPage  *sidebar_page,
                                                         EvDocument     *document);
@@ -143,6 +145,14 @@ ev_sidebar_links_dispose (GObject *object)
                sidebar->priv->page_cache = NULL;
        }
 
+       if (sidebar->priv->job) {
+               g_signal_handlers_disconnect_by_func (sidebar->priv->job,
+                                                     job_finished_callback, sidebar);
+               ev_job_queue_remove_job (sidebar->priv->job);                                                 
+               g_object_unref (sidebar->priv->job);
+               sidebar->priv->job = NULL;
+       }
+
        G_OBJECT_CLASS (ev_sidebar_links_parent_class)->dispose (object);
 }