From 5eaea05a2b6af0ddcf28fca1f0cd3fc0c54f4d07 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Thu, 23 Jun 2016 21:58:13 +0300 Subject: SCI32: Properly initialize AudioChannel inside Audio32::play() Fixes audio issues caused by uninitialized variables --- engines/sci/sound/audio32.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'engines/sci/sound/audio32.cpp') diff --git a/engines/sci/sound/audio32.cpp b/engines/sci/sound/audio32.cpp index def3e4d838..c457311d66 100644 --- a/engines/sci/sound/audio32.cpp +++ b/engines/sci/sound/audio32.cpp @@ -561,11 +561,20 @@ uint16 Audio32::play(int16 channelIndex, const ResourceId resourceId, const bool AudioChannel &channel = getChannel(channelIndex); channel.id = resourceId; channel.resource = resource; + channel.resourceStream = nullptr; + channel.stream = nullptr; + channel.converter = nullptr; + channel.duration = 0; + channel.startedAtTick = 0; + channel.pausedAtTick = 0; channel.loop = loop; - channel.robot = false; - channel.vmd = false; channel.lastFadeTick = 0; + channel.fadeVolume = 0; + channel.fadeSpeed = 0; channel.fadeStepsRemaining = 0; + channel.stopChannelOnFade = false; + channel.robot = false; + channel.vmd = false; channel.soundNode = soundNode; channel.volume = volume < 0 || volume > kMaxVolume ? (int)kMaxVolume : volume; // TODO: SCI3 introduces stereo audio -- cgit v1.2.3