paned: Warn if child is not actually a child
authorGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>
Tue, 9 Aug 2022 17:20:25 +0000 (14:20 -0300)
committerGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>
Tue, 9 Aug 2022 17:20:25 +0000 (14:20 -0300)
This will at least allow us to debug this in the future.

gtk/gtkpaned.c

index a3cb71081aaccb5f26ea8843b92197a9baddeea5..4dde59072482496811bc239fd0252c95ae33d7ac 100644 (file)
@@ -1977,6 +1977,15 @@ gtk_paned_set_focus_child (GtkWidget *widget,
             if (GTK_IS_PANED (w))
               last_focus = w;
 
+          if (w == NULL)
+            {
+              g_warning ("Error finding last focus widget of GtkPaned %p, "
+                         "gtk_paned_set_focus_child was called on widget %p "
+                         "which is not child of %p.",
+                         widget, child, widget);
+              return;
+            }
+
           focus_child = gtk_widget_get_focus_child (widget);
           if (focus_child == paned->start_child)
             gtk_paned_set_last_start_child_focus (paned, last_focus);