diff options
author | Nickolay V. Shmyrev <nshmyrev@src.gnome.org> | 2005-06-18 19:22:00 (GMT) |
---|---|---|
committer | Nickolay V. Shmyrev <nshmyrev@src.gnome.org> | 2005-06-18 19:22:00 (GMT) |
commit | f302b9a420aaf02e5805b3225ce4fef5a63e9b67 (patch) | |
tree | 1465b37364970f800216e8918a1675de047a5c1e /shell/ev-window.c | |
parent | 6f98f83c02032b7f164fa6a497ad8069f60bf642 (diff) |
Fixed lot's of memory leaks, for example, memory leak on reload, described
* shell/ev-page-action.c: (match_selected_cb),
(display_completion_text), (match_completion), (update_model):
* shell/ev-sidebar-links.c: (ev_sidebar_links_dispose),
(expand_open_links):
* shell/ev-sidebar.c: (ev_sidebar_destroy),
(ev_sidebar_menu_item_activate_cb), (ev_sidebar_add_page),
(ev_sidebar_set_document):
* shell/ev-window.c: (ev_window_xfer_job_cb),
(sidebar_widget_model_set), (sidebar_page_main_widget_update_cb):
Fixed lot's of memory leaks, for example, memory leak on reload,
described in bug 307793.
Diffstat (limited to 'shell/ev-window.c')
-rw-r--r-- | shell/ev-window.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/shell/ev-window.c b/shell/ev-window.c index b9eb24e..10bdb9c 100644 --- a/shell/ev-window.c +++ b/shell/ev-window.c @@ -889,6 +889,7 @@ ev_window_xfer_job_cb (EvJobXfer *job, G_CALLBACK (ev_window_load_job_cb), ev_window); ev_job_queue_add_job (ev_window->priv->load_job, EV_JOB_PRIORITY_HIGH); + g_object_unref (document); } } @@ -2857,6 +2858,7 @@ sidebar_widget_model_set (EvSidebarLinks *ev_sidebar_links, action = gtk_action_group_get_action (ev_window->priv->action_group, PAGE_SELECTOR_ACTION); ev_page_action_set_model (EV_PAGE_ACTION (action), model); + g_object_unref (model); } @@ -2900,13 +2902,14 @@ sidebar_page_main_widget_update_cb (GObject *ev_sidebar_page, g_object_get (ev_sidebar_page, "main_widget", &widget, NULL); - if (widget != NULL) { - g_signal_connect_object (widget, "focus_in_event", - G_CALLBACK (view_actions_focus_in_cb), + if (widget != NULL) { + g_signal_connect_object (widget, "focus_in_event", + G_CALLBACK (view_actions_focus_in_cb), ev_window, 0); - g_signal_connect_object (widget, "focus_out_event", - G_CALLBACK (view_actions_focus_out_cb), + g_signal_connect_object (widget, "focus_out_event", + G_CALLBACK (view_actions_focus_out_cb), ev_window, 0); + g_object_unref (widget); } } |