[gimp] app: GimpContainerTreeView: keep a reference on tree_view->model



commit 55e8528eff5b3925ff96bc0f30c43709f8c92ff4
Author: Michael Natterer <mitch gimp org>
Date:   Fri Jun 6 22:41:33 2014 +0200

    app: GimpContainerTreeView: keep a reference on tree_view->model
    
    during the lifetime of the widget. Leaving that up to the GtkTreeView
    was working for mysterious reasons even during destruction of the
    widget. It's safer and cleaner this way.

 app/widgets/gimpcontainertreeview.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)
---
diff --git a/app/widgets/gimpcontainertreeview.c b/app/widgets/gimpcontainertreeview.c
index a9b674b..25ece21 100644
--- a/app/widgets/gimpcontainertreeview.c
+++ b/app/widgets/gimpcontainertreeview.c
@@ -241,7 +241,6 @@ gimp_container_tree_view_constructed (GObject *object)
                                   "has-tooltip",     TRUE,
                                   "show-expanders",  GIMP_CONTAINER_VIEW_GET_INTERFACE (view)->model_is_tree,
                                   NULL);
-  g_object_unref (tree_view->model);
 
   gtk_container_add (GTK_CONTAINER (box->scrolled_win),
                      GTK_WIDGET (tree_view->view));
@@ -320,6 +319,12 @@ gimp_container_tree_view_finalize (GObject *object)
 {
   GimpContainerTreeView *tree_view = GIMP_CONTAINER_TREE_VIEW (object);
 
+  if (tree_view->model)
+    {
+      g_object_unref (tree_view->model);
+      tree_view->model = NULL;
+    }
+
   if (tree_view->priv->toggle_cells)
     {
       g_list_free (tree_view->priv->toggle_cells);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]