Describe the bug
Mixxx using PortAudio from the Debian package can crash (SIGABRT) during shutdown when there is an issue with the jack server or pipewire even if a different API is used. The issue is that the user will loose all unsaved data without a notice.
To Reproduce
Use a Linux Debian based distribution
Start Mixxx with Pipwire installed.
Play tracks using an ALSA device
Simulate an issue with pipwire by systemctl --user restart pipewire.service
I think the main part of the solution is to disable assertions in the Debian builds. In addition I think that assert() is not correct here because jack_deactivate() can fail.
Actual behavior
It crashes.
Desktop (please complete the following information):
OS: Ubuntu Focal
OS Version 20.4
PortAudio version: 19.6.0
If Windows or Linux, which Host API (e.g. WASAPI): ALSA
Describe the bug Mixxx using PortAudio from the Debian package can crash (SIGABRT) during shutdown when there is an issue with the jack server or pipewire even if a different API is used. The issue is that the user will loose all unsaved data without a notice.
To Reproduce
systemctl --user restart pipewire.service
It happens here: https://github.com/PortAudio/portaudio/blob/master/src/hostapi/jack/pa_jack.c#L864
Expected behavior
I think the main part of the solution is to disable assertions in the Debian builds. In addition I think that assert() is not correct here because jack_deactivate() can fail.
Actual behavior
Desktop (please complete the following information):
Additional context The original bug is here: https://github.com/mixxxdj/mixxx/issues/11587 I have also filed a Debian bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1036645
What do you think. Does it make sense to remove the assertion at that point?