From 5ed03fcd3ae9ec219f40736056c73f1a0bed5b4c Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Mon, 14 Sep 2009 18:40:05 +0000 Subject: Fix valgrind warning. svn-id: r44084 --- engines/groovie/music.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'engines') diff --git a/engines/groovie/music.cpp b/engines/groovie/music.cpp index a92beee17e..0566b611d5 100644 --- a/engines/groovie/music.cpp +++ b/engines/groovie/music.cpp @@ -557,7 +557,14 @@ void MusicPlayerXMI::setTimbreAD(byte channel, const Timbre &timbre) { } // Prepare the AdLib Instrument array from the GTL entry - byte data[13]; + // + // struct AdlibInstrument used by our AdLib MIDI synth is 30 bytes, + // since we pass data + 2 for non precussion instruments we need to + // have a buffer of size 32, so there are no invalid memory reads, + // when setting up an AdLib instrument. + byte data[32]; + memset(data, 0, sizeof(data)); + data[2] = timbre.data[1]; // mod_characteristic data[3] = timbre.data[2] ^ 0x3F; // mod_scalingOutputLevel data[4] = ~timbre.data[3]; // mod_attackDecay -- cgit v1.2.3