[gtk/ebassi/finish-template] fixup! Add gtk_widget_clear_template()



commit 5b3206bd42bb5defdfc57ff1524cbe4506544652
Author: Emmanuele Bassi <ebassi gnome org>
Date:   Mon Jul 11 18:09:26 2022 +0100

    fixup! Add gtk_widget_clear_template()

 gtk/gtkwidget.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
---
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index 082d4b9e4b..6389ad71a8 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -11052,7 +11052,8 @@ gtk_widget_dispose_template (GtkWidget *widget,
   /* Tear down the automatic child data */
   GHashTable *auto_child_hash = get_auto_child_hash (widget, widget_type, FALSE);
 
-  for (GSList *l = template->children; l != NULL; l = l->next)
+  GSList *children = g_steal_pointer (&template->children);
+  for (GSList *l = children; l != NULL; l = l->next)
     {
       AutomaticChildClass *child_class = l->data;
 
@@ -11061,6 +11062,8 @@ gtk_widget_dispose_template (GtkWidget *widget,
         {
           gpointer child = g_hash_table_lookup (auto_child_hash, child_class->name);
 
+          g_assert (child != NULL);
+
           /* We have to explicitly unparent direct children of this widget */
           if (GTK_IS_WIDGET (child) && _gtk_widget_get_parent (child) == widget)
             gtk_widget_unparent (child);


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