aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-11-15 00:25:11 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2015-12-06 12:40:49 +0100
commit0814b140b1d7d6d324cb76b863b9cbc8f62abd58 (patch)
tree39ee7ddab27ed29d8a0892a1c944342eb7720244
parent3879202d68ce327416806f650f3d8bf63a4cd83a (diff)
downloadffmpeg-0814b140b1d7d6d324cb76b863b9cbc8f62abd58.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>
-rw-r--r--libavcodec/dxtory.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/dxtory.c b/libavcodec/dxtory.c
index 5e32107756..b89a45ff63 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;
}