Output: start with a null mixer.

There are code paths (mostly error cases) in which it is possible to
initialize an AudioOutput and then kill it without ever calling
audio_output_new().  In such a case, its destructor will attempt to
free a mixer that was never initialized, leading to an attempt to
take out a lock on a mutex that was similarly never initialized,
which hangs forever.

Fix by always initializing the mixer appropriately.
This commit is contained in:
Nix 2014-11-24 13:02:07 +00:00 committed by Max Kellermann
parent 8780e23ed3
commit 811af02f56

View File

@ -48,6 +48,7 @@
AudioOutput::AudioOutput(const AudioOutputPlugin &_plugin)
:plugin(_plugin),
mixer(nullptr),
enabled(true), really_enabled(false),
open(false),
pause(false),