Unregister ports at session close.
This fixes issues when re-loading a session without taking the engine down.
This commit is contained in:
parent
d61683809d
commit
727ac30dd2
|
@ -625,7 +625,7 @@ Session::destroy ()
|
|||
|
||||
ControlProtocolManager::instance().drop_protocols ();
|
||||
|
||||
/* stop autoconnecting */
|
||||
/* stop auto dis/connecting */
|
||||
auto_connect_thread_terminate ();
|
||||
|
||||
MIDI::Name::MidiPatchManager::instance().remove_search_path(session_directory().midi_patch_path());
|
||||
|
@ -807,6 +807,14 @@ Session::destroy ()
|
|||
}
|
||||
}
|
||||
|
||||
{
|
||||
/* unregister all dropped ports, process pending port deletion. */
|
||||
// this may call ARDOUR::Port::drop ... jack_port_unregister ()
|
||||
// jack1 cannot cope with removing ports while processing
|
||||
Glib::Threads::Mutex::Lock lm (AudioEngine::instance()->process_lock ());
|
||||
AudioEngine::instance()->clear_pending_port_deletions ();
|
||||
}
|
||||
|
||||
DEBUG_TRACE (DEBUG::Destruction, "Session::destroy() done\n");
|
||||
|
||||
BOOST_SHOW_POINTERS ();
|
||||
|
|
Loading…
Reference in New Issue
Block a user