aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>2016-10-30 21:18:20 +0100
committerAndreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>2016-11-01 00:39:06 +0100
commit60178e78f2fe9a7bfb9da0abc985835e2ebfd2f1 (patch)
treec6616df4cd50f505e3042fe43b9f5f7dd8cbda4a
parent140f48b90fbe32a88423aad473bccc72c3bb450e (diff)
downloadffmpeg-60178e78f2fe9a7bfb9da0abc985835e2ebfd2f1.tar.gz
interplayacm: increase bitstream buffer size by AV_INPUT_BUFFER_PADDING_SIZE
This fixes out-of-bounds reads by the bitstream reader. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
-rw-r--r--libavcodec/interplayacm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/interplayacm.c b/libavcodec/interplayacm.c
index 032053103a..c897e72bb6 100644
--- a/libavcodec/interplayacm.c
+++ b/libavcodec/interplayacm.c
@@ -77,7 +77,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
s->block = av_calloc(s->block_len, sizeof(int));
s->wrapbuf = av_calloc(s->wrapbuf_len, sizeof(int));
s->ampbuf = av_calloc(0x10000, sizeof(int));
- s->bitstream = av_calloc(s->max_framesize, sizeof(*s->bitstream));
+ s->bitstream = av_calloc(s->max_framesize + AV_INPUT_BUFFER_PADDING_SIZE / sizeof(*s->bitstream) + 1, sizeof(*s->bitstream));
if (!s->block || !s->wrapbuf || !s->ampbuf || !s->bitstream)
return AVERROR(ENOMEM);