From 4f4135e1772e3d9e04340a5b4d2085f2e2b8ea56 Mon Sep 17 00:00:00 2001 From: falkTX Date: Thu, 21 Oct 2021 18:47:30 +0100 Subject: [PATCH] Fix plugin cleanup Signed-off-by: falkTX --- src/CardinalPlugin.cpp | 9 ++++++--- src/CardinalUI.cpp | 1 + 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/CardinalPlugin.cpp b/src/CardinalPlugin.cpp index 1ba312d..164c7ee 100644 --- a/src/CardinalPlugin.cpp +++ b/src/CardinalPlugin.cpp @@ -228,17 +228,20 @@ public: ~CardinalPlugin() override { { - const ScopedContext sc(this); + const MutexLocker cml(context->mutex); + rack::contextSet(context); + /* delete context->scene; context->scene = nullptr; - delete context->event; context->event = nullptr; */ - delete context; } + delete context; + rack::contextSet(nullptr); + if (! fAutosavePath.empty()) rack::system::removeRecursively(fAutosavePath); } diff --git a/src/CardinalUI.cpp b/src/CardinalUI.cpp index 0fc9dec..b6134b6 100644 --- a/src/CardinalUI.cpp +++ b/src/CardinalUI.cpp @@ -139,6 +139,7 @@ public: if (button->text == "Library") { layout->children.erase(it); + button->parent = nullptr; delete button; break; }