From 6bb3c48972d172fec244afae08a905e2246d9cda Mon Sep 17 00:00:00 2001 From: David Robillard Date: Fri, 8 Mar 2019 06:50:14 +0100 Subject: Use smart pointers over manual memory management --- src/server/ingen_lv2.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'src/server/ingen_lv2.cpp') diff --git a/src/server/ingen_lv2.cpp b/src/server/ingen_lv2.cpp index 8e5b2189..2d1769a0 100644 --- a/src/server/ingen_lv2.cpp +++ b/src/server/ingen_lv2.cpp @@ -429,7 +429,7 @@ struct IngenPlugin { UPtr world; SPtr engine; - std::thread* main; + UPtr main; LV2_URID_Map* map; int argc; char** argv; @@ -613,7 +613,7 @@ ingen_activate(LV2_Handle instance) SPtr engine = static_ptr_cast(me->world->engine()); const SPtr& driver = static_ptr_cast(engine->driver()); engine->activate(); - me->main = new std::thread(ingen_lv2_main, engine, driver); + me->main = make_unique(ingen_lv2_main, engine, driver); } static void @@ -636,8 +636,7 @@ ingen_deactivate(LV2_Handle instance) me->world->engine()->deactivate(); if (me->main) { me->main->join(); - delete me->main; - me->main = nullptr; + me->main.reset(); } } @@ -649,7 +648,7 @@ ingen_cleanup(LV2_Handle instance) me->world->set_interface(SPtr()); if (me->main) { me->main->join(); - delete me->main; + me->main.reset(); } auto world = std::move(me->world); -- cgit v1.2.1