summaryrefslogtreecommitdiff
path: root/libavcodec/dxtory.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-11-15 00:25:11 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2015-11-15 00:26:01 +0100
commit9caa9414ccf2dcf8aee2695377dee830a5024c82 (patch)
tree9be0e47e74258ee6e85430189852daaff8edd272 /libavcodec/dxtory.c
parenta105f52855d08e4ab1ed7306da8e32fc90d6d647 (diff)
downloadffmpeg-9caa9414ccf2dcf8aee2695377dee830a5024c82.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>
Diffstat (limited to 'libavcodec/dxtory.c')
-rw-r--r--libavcodec/dxtory.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/dxtory.c b/libavcodec/dxtory.c
index 6f68c10889..8a326b7f3b 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;
}