From 005964b22a86104ce8a4e9bf344ba2c8c032a58a Mon Sep 17 00:00:00 2001 From: Tristan Van Berkom Date: Thu, 2 Dec 2010 17:42:46 +0900 Subject: [PATCH] Manually pulling back a GtkTreeViewColumn fix from treeview-refactor-staging This fix has evolved in the staging branch since all column members are on a private structure, but since it causes warnings when closing the windows of the testcellarea test (because the combo-boxes use a treeviewcolumn) I thought it nice for now to just manually include the fix. The fix is just proper bookkeeping of delegate objects at dispose() time. --- gtk/gtktreeviewcolumn.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gtk/gtktreeviewcolumn.c b/gtk/gtktreeviewcolumn.c index 363082cfa4..f4aa265737 100644 --- a/gtk/gtktreeviewcolumn.c +++ b/gtk/gtktreeviewcolumn.c @@ -396,17 +396,20 @@ gtk_tree_view_column_dispose (GObject *object) GtkTreeViewColumn *tree_column = (GtkTreeViewColumn *) object; if (tree_column->cell_area_context) - { - g_object_unref (tree_column->cell_area_context); - + { g_signal_handler_disconnect (tree_column->cell_area_context, tree_column->context_changed_signal); + + g_object_unref (tree_column->cell_area_context); + + tree_column->cell_area_context = NULL; tree_column->context_changed_signal = 0; } if (tree_column->cell_area) { g_object_unref (tree_column->cell_area); + tree_column->cell_area = NULL; } if (tree_column->child)