TreeViewCol: Fix SEGV on remove/add, + memory leak

Nulling priv->button in _unset_tree_view() is asymmetrical: we create
it via init(), not _set_tree_view(), so we shouldn’t null in the latter.

Worse, doing so manifests in criticals + a SEGV easily with basic use of
testtreecolumns, removing the TVC from a TV then trying to add it to one

Finally, the wrong null-out meant dispose() failed to unref the button,
so it leaked.

https://bugzilla.gnome.org/show_bug.cgi?id=728452
https://bugzilla.gnome.org/show_bug.cgi?id=788614
This commit is contained in:
Daniel Boles 2017-10-06 20:24:49 +01:00 committed by Daniel Boles
parent af28c031fc
commit 497e877755

View File

@ -1350,7 +1350,6 @@ _gtk_tree_view_column_unset_tree_view (GtkTreeViewColumn *column)
}
priv->tree_view = NULL;
priv->button = NULL;
}
gboolean