summaryrefslogtreecommitdiff
path: root/libs/ardour/session.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2017-07-28 09:00:31 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2017-09-18 11:40:53 -0400
commitb61146365f827fd04fe54a79e0c08926c9e2e9b5 (patch)
treefe2ae7b779887d0bf9d01726b46eb6730991b341 /libs/ardour/session.cc
parentd3404f36848c040820deba3dabaeedb006bd329d (diff)
delete slave during Session::destroy
Diffstat (limited to 'libs/ardour/session.cc')
-rw-r--r--libs/ardour/session.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index d660cf077c..9a7c493fe9 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -100,6 +100,7 @@
#include "ardour/session_playlists.h"
#include "ardour/slave.h"
#include "ardour/smf_source.h"
+#include "ardour/slave.h"
#include "ardour/solo_isolate_control.h"
#include "ardour/source_factory.h"
#include "ardour/speakers.h"
@@ -684,6 +685,12 @@ Session::destroy ()
EngineStateController::instance()->remove_session();
#endif
+ /* drop slave, if any. We don't use use_sync_source (0) because
+ * there's no reason to do all the other stuff that may happen
+ * when calling that method.
+ */
+ delete _slave;
+
/* deregister all ports - there will be no process or any other
* callbacks from the engine any more.
*/