From: Marco Pesenti Gritti Date: Mon, 6 Jun 2005 09:01:06 +0000 (+0000) Subject: Cleanup the old job when changing document X-Git-Tag: EVINCE_0_3_3~276 X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=commitdiff_plain;h=9f3860c715d418bc4af69e0409714a6d58677839;p=evince.git Cleanup the old job when changing document 2005-06-06 Marco Pesenti Gritti * shell/ev-sidebar-links.c: (job_finished_callback), (ev_sidebar_links_set_document): Cleanup the old job when changing document --- diff --git a/ChangeLog b/ChangeLog index b2ac0f51..16b6dc97 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2005-06-06 Marco Pesenti Gritti + + * shell/ev-sidebar-links.c: (job_finished_callback), + (ev_sidebar_links_set_document): + + Cleanup the old job when changing document + 2005-06-05 Nickolay V. Shmyrev <> * shell/ev-stock-icons.c: diff --git a/shell/ev-sidebar-links.c b/shell/ev-sidebar-links.c index 1d73822b..ac34bac4 100644 --- a/shell/ev-sidebar-links.c +++ b/shell/ev-sidebar-links.c @@ -523,6 +523,7 @@ job_finished_callback (EvJobLinks *job, gtk_tree_view_set_model (GTK_TREE_VIEW (priv->tree_view), job->model); g_object_unref (job); + priv->job = NULL; /* Expand one level of the tree */ path = gtk_tree_path_new_first (); @@ -572,6 +573,13 @@ ev_sidebar_links_set_document (EvSidebarPage *sidebar_page, priv->document = g_object_ref (document); priv->page_cache = ev_document_get_page_cache (document); + if (priv->job) { + g_signal_handlers_disconnect_by_func (priv->job, + job_finished_callback, + sidebar_links); + g_object_unref (priv->job); + } + priv->job = ev_job_links_new (document); g_signal_connect (priv->job, "finished", @@ -579,7 +587,6 @@ ev_sidebar_links_set_document (EvSidebarPage *sidebar_page, sidebar_links); /* The priority doesn't matter for this job */ ev_job_queue_add_job (priv->job, EV_JOB_PRIORITY_LOW); - } static gboolean