MultipleOutputs: ensure input_audio_format is zero-initialised

-fixes SIGABRT when mpd is started from a previously paused state
-regression introduced by commit: f5a923b9d1:
'OutputAll: convert to class, move instance to class Partition'

-input_audio_format was previously declared using the static modifier
ensuring it was zero-initialised by default
-the current default-initialised input_audio_format contains garbage at
runtime which allows the AudioFormat.IsDefined() 'fail fast' test in
MultipleOutputs::Update to pass and the SIGABRT follows in
AudioOutput::Open when passed the invalid input_audio_format struct
-switching AudioFormat.IsDefined() for AudioFormat.IsValid() is an
alternative workaround
This commit is contained in:
Pete Beardmore 2014-03-09 18:40:56 +00:00 committed by Max Kellermann
parent 88eae9dabb
commit d0cd98a63a

View File

@ -37,6 +37,7 @@
MultipleOutputs::MultipleOutputs(MixerListener &_mixer_listener)
:mixer_listener(_mixer_listener),
input_audio_format(AudioFormat::Undefined()),
buffer(nullptr), pipe(nullptr),
elapsed_time(-1)
{