From 094a1ee9ac625e56d2792f37fe4feecc6a434501 Mon Sep 17 00:00:00 2001 From: Juan Pablo Ugarte Date: Fri, 9 Oct 2020 17:53:01 -0300 Subject: Backport fix for glade_gtk_cell_renderer_sync_attributes() Close issue #113 "Crash at glade_gtk_cell_renderer_sync_attributes()" --- plugins/gtk+/glade-gtk.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/plugins/gtk+/glade-gtk.c b/plugins/gtk+/glade-gtk.c index c01a1d69..8244bd92 100644 --- a/plugins/gtk+/glade-gtk.c +++ b/plugins/gtk+/glade-gtk.c @@ -10638,6 +10638,7 @@ glade_gtk_cell_renderer_sync_attributes (GObject *object) GtkCellLayout *layout; GtkCellRenderer *cell; GladeWidget *widget = glade_widget_get_from_gobject (object); + GladeWidget *parent; GladeWidget *gmodel; GladeProperty *property; gchar *attr_prop_name; @@ -10650,13 +10651,15 @@ glade_gtk_cell_renderer_sync_attributes (GObject *object) /* Apply attributes to renderer when bound to a model in runtime */ widget = glade_widget_get_from_gobject (object); - - if (widget->parent == NULL) return FALSE; + + parent = glade_widget_get_parent (widget); + if (parent == NULL) + return FALSE; /* When creating widgets, sometimes the parent is set before parenting happens, * here we have to be careful for that.. */ - layout = GTK_CELL_LAYOUT (widget->parent->object); + layout = GTK_CELL_LAYOUT (parent->object); cell = GTK_CELL_RENDERER (object); if (!glade_gtk_cell_layout_has_renderer (layout, cell)) -- cgit v1.2.1