From fc7011d8fd531228cb5e2eb0ec1d626b1ec47894 Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Wed, 10 Dec 2025 21:36:46 +0100 Subject: [PATCH] Use image copy instead of reference for icons. I hope that fixes the problem. --- src/edt/edt/edtPropertiesPages.cc | 2 +- src/layui/layui/layWidgets.cc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/edt/edt/edtPropertiesPages.cc b/src/edt/edt/edtPropertiesPages.cc index 9cd05e123..b3061b023 100644 --- a/src/edt/edt/edtPropertiesPages.cc +++ b/src/edt/edt/edtPropertiesPages.cc @@ -137,7 +137,7 @@ ShapePropertiesPage::icon (size_t entry, int w, int h) const for (auto lp = view->begin_layers (view->current_layer_list ()); ! lp.at_end (); ++lp) { const lay::LayerPropertiesNode *ln = lp.operator-> (); if (ln->cellview_index () == cv_index && ln->layer_index () == layer) { - return QIcon (QPixmap::fromImage (view->icon_for_layer (lp, w, h).to_image ())); + return QIcon (QPixmap::fromImage (view->icon_for_layer (lp, w, h).to_image_copy ())); } } diff --git a/src/layui/layui/layWidgets.cc b/src/layui/layui/layWidgets.cc index ca0c54c71..d05eeef6b 100644 --- a/src/layui/layui/layWidgets.cc +++ b/src/layui/layui/layWidgets.cc @@ -721,7 +721,7 @@ LayerSelectionComboBox::do_update_layer_list () if (lp->cellview_index () == mp_private->cv_index && ! lp->has_children () && (mp_private->all_layers || lp->layer_index () >= 0) && lp->source (true).layer_props () != db::LayerProperties ()) { std::pair k (lp->source (true).layer_props (), lp->layer_index ()); name_for_layer.insert (std::make_pair (k, lp->display_string (mp_private->view, true, true /*always show source*/))); - QIcon icon = QIcon (QPixmap::fromImage (mp_private->view->icon_for_layer (lp, icon_width, icon_height, dpr, 0, true).to_image ())); + QIcon icon = QIcon (QPixmap::fromImage (mp_private->view->icon_for_layer (lp, icon_width, icon_height, dpr, 0, true).to_image_copy ())); icon_for_layer.insert (std::make_pair (k, icon)); mp_private->layers.push_back (k); }