summaryrefslogtreecommitdiff
path: root/libs/ardour/session.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-12-18 00:06:44 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2016-12-18 00:07:59 +0000
commit1223c8d1cd988c426ea79046b7eb9f542561dcb2 (patch)
treeeff07299e8408a698d4ab8d10d2cd4c7e6413c97 /libs/ardour/session.cc
parentf80fb029e22a5bde240b523370b831fbe3e620d8 (diff)
move termination of auto connect thread till after control protocols are destroyed.
Otherwise, control protocol ports don't actually get deleted
Diffstat (limited to 'libs/ardour/session.cc')
-rw-r--r--libs/ardour/session.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index 5b9d7369b5..33cd651dcc 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -607,9 +607,6 @@ Session::destroy ()
_state_of_the_state = StateOfTheState (CannotSave|Deletion);
- /* stop autoconnecting */
- auto_connect_thread_terminate ();
-
/* disconnect from any and all signals that we are connected to */
Port::PortSignalDrop (); /* EMIT SIGNAL */
@@ -621,6 +618,9 @@ Session::destroy ()
ControlProtocolManager::instance().drop_protocols ();
+ /* stop autoconnecting */
+ auto_connect_thread_terminate ();
+
MIDI::Name::MidiPatchManager::instance().remove_search_path(session_directory().midi_patch_path());
_engine.remove_session ();