diff --git a/libs/backends/alsa/alsa_audiobackend.cc b/libs/backends/alsa/alsa_audiobackend.cc index 81e79669fd..ffb1f6a6fa 100644 --- a/libs/backends/alsa/alsa_audiobackend.cc +++ b/libs/backends/alsa/alsa_audiobackend.cc @@ -89,6 +89,8 @@ AlsaAudioBackend::AlsaAudioBackend (AudioEngine& e, AudioBackendInfo& info) AlsaAudioBackend::~AlsaAudioBackend () { + clear_ports (); + pthread_mutex_destroy (&_port_callback_mutex); pthread_mutex_destroy (&_device_port_mutex); } diff --git a/libs/backends/coreaudio/coreaudio_backend.cc b/libs/backends/coreaudio/coreaudio_backend.cc index 7afc40183e..2c4e03e116 100644 --- a/libs/backends/coreaudio/coreaudio_backend.cc +++ b/libs/backends/coreaudio/coreaudio_backend.cc @@ -129,6 +129,9 @@ CoreAudioBackend::~CoreAudioBackend () { delete _pcmio; _pcmio = 0; delete _midiio; _midiio = 0; + + clear_ports (); + pthread_mutex_destroy (&_port_callback_mutex); pthread_mutex_destroy (&_port_registration_mutex); pthread_mutex_destroy (&_process_callback_mutex); diff --git a/libs/backends/jack/jack_audiobackend.cc b/libs/backends/jack/jack_audiobackend.cc index d33d3d6c5f..254dfa4147 100644 --- a/libs/backends/jack/jack_audiobackend.cc +++ b/libs/backends/jack/jack_audiobackend.cc @@ -72,6 +72,7 @@ JACKAudioBackend::JACKAudioBackend (AudioEngine& e, AudioBackendInfo& info, boos JACKAudioBackend::~JACKAudioBackend() { + _jack_ports.clear (); } string diff --git a/libs/backends/portaudio/portaudio_backend.cc b/libs/backends/portaudio/portaudio_backend.cc index ba72910d44..779bfc423b 100644 --- a/libs/backends/portaudio/portaudio_backend.cc +++ b/libs/backends/portaudio/portaudio_backend.cc @@ -106,6 +106,8 @@ PortAudioBackend::~PortAudioBackend () delete _pcmio; _pcmio = 0; delete _midiio; _midiio = 0; + clear_ports (); + pthread_mutex_destroy (&_port_callback_mutex); pthread_mutex_destroy (&_freewheel_mutex); pthread_cond_destroy (&_freewheel_signal); diff --git a/libs/backends/pulseaudio/pulseaudio_backend.cc b/libs/backends/pulseaudio/pulseaudio_backend.cc index d16ea73bf2..2af182a94e 100644 --- a/libs/backends/pulseaudio/pulseaudio_backend.cc +++ b/libs/backends/pulseaudio/pulseaudio_backend.cc @@ -69,6 +69,8 @@ PulseAudioBackend::PulseAudioBackend (AudioEngine& e, AudioBackendInfo& info) PulseAudioBackend::~PulseAudioBackend () { + clear_ports (); + pthread_mutex_destroy (&_port_callback_mutex); }