summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorreduz <juan@okamstudio.com>2015-10-08 14:50:18 -0300
committerreduz <juan@okamstudio.com>2015-10-08 14:50:18 -0300
commit3514a87b371385cdc71a2ed36deb40cd0275fff5 (patch)
tree9119e892b1f49670c4208a91f3fb039be8384bc8
parentc2532bffb3f00b8ab84785c1f311d12f65b60f71 (diff)
fixed uninitialized memory issues in audio code
-rw-r--r--drivers/speex/audio_stream_speex.cpp4
-rw-r--r--drivers/speex/audio_stream_speex.h1
-rw-r--r--servers/audio/audio_mixer_sw.cpp4
3 files changed, 7 insertions, 2 deletions
diff --git a/drivers/speex/audio_stream_speex.cpp b/drivers/speex/audio_stream_speex.cpp
index 2440969345..1bb4952cc8 100644
--- a/drivers/speex/audio_stream_speex.cpp
+++ b/drivers/speex/audio_stream_speex.cpp
@@ -22,7 +22,7 @@ int AudioStreamPlaybackSpeex::mix(int16_t* p_buffer,int p_frames) {
//printf("update, loops %i, read ofs %i\n", (int)loops, read_ofs);
//printf("playing %i, paused %i\n", (int)playing, (int)paused);
- if (!active || !playing || paused || !data.size())
+ if (!active || !playing || !data.size())
return 0;
/*
@@ -490,6 +490,8 @@ AudioStreamPlaybackSpeex::AudioStreamPlaybackSpeex() {
stream_channels=1;
stream_srate=1;
stream_minbuff_size=1;
+ playing=false;
+
}
diff --git a/drivers/speex/audio_stream_speex.h b/drivers/speex/audio_stream_speex.h
index 570e846734..f0617b302f 100644
--- a/drivers/speex/audio_stream_speex.h
+++ b/drivers/speex/audio_stream_speex.h
@@ -29,7 +29,6 @@ class AudioStreamPlaybackSpeex : public AudioStreamPlayback {
bool loops;
int page_size;
bool playing;
- bool paused;
bool packets_available;
void unload();
diff --git a/servers/audio/audio_mixer_sw.cpp b/servers/audio/audio_mixer_sw.cpp
index 788eec0d4a..791f31719e 100644
--- a/servers/audio/audio_mixer_sw.cpp
+++ b/servers/audio/audio_mixer_sw.cpp
@@ -765,6 +765,10 @@ AudioMixer::ChannelID AudioMixerSW::channel_alloc(RID p_sample) {
c.mix.increment=1;
//zero everything when this errors
for(int i=0;i<4;i++) {
+ c.mix.vol[i]=0;
+ c.mix.reverb_vol[i]=0;
+ c.mix.chorus_vol[i]=0;
+
c.mix.old_vol[i]=0;
c.mix.old_reverb_vol[i]=0;
c.mix.old_chorus_vol[i]=0;