From 947130f2cb4b2f0be0454f38d36ad48ca17365de Mon Sep 17 00:00:00 2001 From: Jehan Date: Tue, 1 Nov 2022 21:42:01 +0100 Subject: [PATCH] app: make a copy of selected items before gimp_container_view_select_items(). Otherwise the selected items might change and invalidate the pointer, eventually leading to a segfault. --- app/widgets/gimpdrawabletreeview.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/widgets/gimpdrawabletreeview.c b/app/widgets/gimpdrawabletreeview.c index 8f7eb20c75..a0eace903c 100644 --- a/app/widgets/gimpdrawabletreeview.c +++ b/app/widgets/gimpdrawabletreeview.c @@ -334,6 +334,7 @@ gimp_drawable_tree_view_floating_selection_changed (GimpImage *image, GList *items; items = GIMP_ITEM_TREE_VIEW_GET_CLASS (view)->get_selected_items (image); + items = g_list_copy (items); /* update button states */ g_signal_handlers_block_by_func (gimp_item_tree_view_get_image (GIMP_ITEM_TREE_VIEW (view)), @@ -343,7 +344,7 @@ gimp_drawable_tree_view_floating_selection_changed (GimpImage *image, g_signal_handlers_unblock_by_func (gimp_item_tree_view_get_image (GIMP_ITEM_TREE_VIEW (view)), gimp_drawable_tree_view_floating_selection_changed, view); - + g_list_free (items); } static void