From 6b10987e4bd9961b6603b426eae087ee49e1bca5 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Thu, 23 Apr 2020 02:30:16 +0200 Subject: Fix Auditioner edge-case when synth cannot be loaded --- libs/ardour/auditioner.cc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'libs') diff --git a/libs/ardour/auditioner.cc b/libs/ardour/auditioner.cc index ba51922a8f..079677ae4c 100644 --- a/libs/ardour/auditioner.cc +++ b/libs/ardour/auditioner.cc @@ -135,7 +135,9 @@ Auditioner::load_synth (bool need_lock) unload_synth(need_lock); boost::shared_ptr p = audition_synth_info->load (_session); - asynth = boost::shared_ptr (new PluginInsert (_session, p)); + if (p) { + asynth = boost::shared_ptr (new PluginInsert (_session, p)); + } } void @@ -143,10 +145,9 @@ Auditioner::unload_synth (bool need_lock) { if (asynth) { asynth->drop_references (); + remove_processor (asynth, NULL, need_lock); } - if (0 == remove_processor (asynth, NULL, need_lock)) { - asynth.reset (); - } + asynth.reset (); } int -- cgit v1.2.3