diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-01-25 23:23:35 +0100 |
---|---|---|
committer | Alex Converse <alex.converse@gmail.com> | 2012-01-30 10:16:23 -0800 |
commit | a02e8df973f5478ec82f4c507f5b5b191a5ecb6b (patch) | |
tree | 4ea42a2ba8e950d4f996ed140193e9380ef0fe9f /libavcodec | |
parent | 386741f887714d3e46c9e8fe577e326a7964037b (diff) | |
download | ffmpeg-a02e8df973f5478ec82f4c507f5b5b191a5ecb6b.tar.gz |
kgv1dec: Increase offsets array size so it is large enough.
Fixes CVE-2011-3945
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 807a045ab7f51993a2c1b3116016cbbd4f3d20d6)
Signed-off-by: Alex Converse <alex.converse@gmail.com>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/kgv1dec.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/kgv1dec.c b/libavcodec/kgv1dec.c index 2d6fa73fc2..f3ffd8f09e 100644 --- a/libavcodec/kgv1dec.c +++ b/libavcodec/kgv1dec.c @@ -39,7 +39,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPac const uint8_t *buf = avpkt->data; const uint8_t *buf_end = buf + avpkt->size; KgvContext * const c = avctx->priv_data; - int offsets[7]; + int offsets[8]; uint16_t *out, *prev; int outcnt = 0, maxcnt; int w, h, i; @@ -69,7 +69,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPac return -1; c->prev = prev; - for (i = 0; i < 7; i++) + for (i = 0; i < 8; i++) offsets[i] = -1; while (outcnt < maxcnt && buf_end - 2 > buf) { |