aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-11-15 00:25:11 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2015-11-26 16:58:33 +0100
commitf43b6a094c095a4f30735634e8411920307baa34 (patch)
tree6ab157580631238a8ae2fd0bf8b1dc9d579e4cde /libavcodec
parent44d82a8fa16c105b239aae2f2364c5bbf91e456d (diff)
downloadffmpeg-f43b6a094c095a4f30735634e8411920307baa34.tar.gz
avcodec/dxtory: Fix input size check in dxtory_decode_v1_420()
Fixes out of array read Fixes: c50c4aa6cefda71b19a31ea12302980c/asan_heap-oob_12be5fd_7011_33ebd015a74976215934add72b9c8352.avi Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 9caa9414ccf2dcf8aee2695377dee830a5024c82) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/dxtory.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/dxtory.c b/libavcodec/dxtory.c
index 91d87f08d9..bc3e8383ea 100644
--- a/libavcodec/dxtory.c
+++ b/libavcodec/dxtory.c
@@ -108,7 +108,7 @@ static int dxtory_decode_v1_420(AVCodecContext *avctx, AVFrame *pic,
uint8_t *Y1, *Y2, *U, *V;
int ret;
- if (src_size < avctx->width * avctx->height * 3LL / 2) {
+ if (src_size < FFALIGN(avctx->width, 2) * FFALIGN(avctx->height, 2) * 3LL / 2) {
av_log(avctx, AV_LOG_ERROR, "packet too small\n");
return AVERROR_INVALIDDATA;
}