diff --git a/gtk/gtkbox.c b/gtk/gtkbox.c index 7d85ba0eea..1705645a53 100644 --- a/gtk/gtkbox.c +++ b/gtk/gtkbox.c @@ -1807,13 +1807,13 @@ gtk_box_remove (GtkContainer *container, { gboolean was_visible; - was_visible = gtk_widget_get_visible (widget); - gtk_widget_unparent (widget); - g_signal_handlers_disconnect_by_func (widget, box_child_visibility_notify_cb, box); + was_visible = gtk_widget_get_visible (widget); + gtk_widget_unparent (widget); + priv->children = g_list_remove_link (priv->children, children); g_list_free (children); g_free (child);