13
0

Fix crash when disabling generic MIDI surface

The event-loop has to be stopped before unregistering ports
and deleting the instance.
This commit is contained in:
Robin Gareus 2022-09-30 01:58:24 +02:00
parent d0b490d1b7
commit 9a34d15b3c
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04

View File

@ -146,6 +146,8 @@ GenericMidiControlProtocol::GenericMidiControlProtocol (Session& s)
GenericMidiControlProtocol::~GenericMidiControlProtocol () GenericMidiControlProtocol::~GenericMidiControlProtocol ()
{ {
set_active (false);
if (_input_port) { if (_input_port) {
DEBUG_TRACE (DEBUG::GenericMidi, string_compose ("unregistering input port %1\n", boost::shared_ptr<ARDOUR::Port>(_input_port)->name())); DEBUG_TRACE (DEBUG::GenericMidi, string_compose ("unregistering input port %1\n", boost::shared_ptr<ARDOUR::Port>(_input_port)->name()));
Glib::Threads::Mutex::Lock em (AudioEngine::instance()->process_lock()); Glib::Threads::Mutex::Lock em (AudioEngine::instance()->process_lock());