From c618c616fe1e6a0631f415bffb84b872755ad1d3 Mon Sep 17 00:00:00 2001 From: tobid7 Date: Wed, 24 Dec 2025 15:05:05 +0100 Subject: [PATCH] Fix UI7 Crash by safe deleting the elements --- pd/ui7/source/layout.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pd/ui7/source/layout.cpp b/pd/ui7/source/layout.cpp index e69823b..f9c3185 100755 --- a/pd/ui7/source/layout.cpp +++ b/pd/ui7/source/layout.cpp @@ -124,15 +124,15 @@ PD_UI7_API void Layout::Update() { it->Draw(); } } - std::vector tbr; - for (size_t i = 0; i < IDObjects.size(); i++) { - if (IDObjects[i]->Removable()) { - tbr.push_back(i); + + for (auto it = IDObjects.begin(); it != IDObjects.end();) { + if ((*it)->Removable()) { + it = IDObjects.erase(it); + } else { + it++; } } - for (auto& it : tbr) { - IDObjects.erase(IDObjects.begin() + it); - } + Objects.clear(); WorkRect = fvec4(fvec2(WorkRect.x, WorkRect.y), Size - IO->MenuPadding); CursorInit();