diff --git a/NEWS b/NEWS index 2836e984e..ad631c9e1 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,6 @@ ver 0.20.16 (not yet released) +* output + - pulse: fix crash during auto-detection * database - simple: fix search within mount points * fix crash in debug build on Haiku and other operating systems diff --git a/src/output/plugins/PulseOutputPlugin.cxx b/src/output/plugins/PulseOutputPlugin.cxx index 01302e53d..77c411d22 100644 --- a/src/output/plugins/PulseOutputPlugin.cxx +++ b/src/output/plugins/PulseOutputPlugin.cxx @@ -27,6 +27,7 @@ #include "../Wrapper.hxx" #include "mixer/MixerList.hxx" #include "mixer/plugins/PulseMixerPlugin.hxx" +#include "util/ScopeExit.hxx" #include "Log.hxx" #include @@ -854,7 +855,10 @@ PulseOutput::TestDefaultDevice() try { const ConfigBlock empty; PulseOutput po(empty); + po.Enable(); + AtScopeExit(&po) { po.Disable(); }; po.WaitConnection(); + return true; } catch (const std::runtime_error &e) { return false;