diff -Naur audiofile-0.2.6/libaudiofile/modules/msadpcm.c audiofile-0.2.6-mp/libaudiofile/modules/msadpcm.c --- audiofile-0.2.6/libaudiofile/modules/msadpcm.c 2004-03-06 07:39:23.000000000 +0100 +++ audiofile-0.2.6-mp/libaudiofile/modules/msadpcm.c 2009-01-20 20:05:14.919961000 +0100 @@ -129,8 +129,7 @@ ms_adpcm_state *state[2]; /* Calculate the number of bytes needed for decoded data. */ - outputLength = msadpcm->samplesPerBlock * sizeof (int16_t) * - msadpcm->track->f.channelCount; + outputLength = msadpcm->samplesPerBlock * sizeof (int16_t); channelCount = msadpcm->track->f.channelCount; @@ -180,8 +179,7 @@ The first two samples have already been 'decoded' in the block header. */ - samplesRemaining = (msadpcm->samplesPerBlock - 2) * - msadpcm->track->f.channelCount; + samplesRemaining = msadpcm->samplesPerBlock - 2; while (samplesRemaining > 0) {