aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-10-27 01:18:22 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2015-10-30 17:55:31 +0100
commit6ac9d6303f0d6913be7fad742dcd98e66f2d6339 (patch)
tree78343403017798be8c841753c5dd05776625d424
parent81a2ad762b690fed9ca085f1f17bd0a9ec28f88c (diff)
downloadffmpeg-6ac9d6303f0d6913be7fad742dcd98e66f2d6339.tar.gz
avcodec/opusdec: Fix extra samples read index
Fixes crash Fixes Ticket4969 part 1 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 07225fa74f2cdb29d6d85fd33675539bfdfe9ea5) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/opusdec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/opusdec.c b/libavcodec/opusdec.c
index f07f502d18..6025f679a2 100644
--- a/libavcodec/opusdec.c
+++ b/libavcodec/opusdec.c
@@ -565,8 +565,8 @@ static int opus_decode_packet(AVCodecContext *avctx, void *data,
if (buffer_samples) {
float *buf[2] = { c->out[2 * i + 0] ? c->out[2 * i + 0] : (float*)frame->extended_data[0],
c->out[2 * i + 1] ? c->out[2 * i + 1] : (float*)frame->extended_data[0] };
- buf[0] += buffer_samples;
- buf[1] += buffer_samples;
+ buf[0] += decoded_samples;
+ buf[1] += decoded_samples;
ret = av_audio_fifo_write(c->sync_buffers[i], (void**)buf, buffer_samples);
if (ret < 0)
return ret;