aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2018-01-15 19:03:48 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2018-02-19 02:40:54 +0100
commite5296dfffaad9e8c61db88d6862c23cae08e35bc (patch)
treea338d7a56a2cbbca899bc666170d36da41ede571
parent7d5ca21698112b0a9af49c6ac0023b29a2d959c8 (diff)
downloadffmpeg-e5296dfffaad9e8c61db88d6862c23cae08e35bc.tar.gz
avcodec/ulti: Check number of blocks at init
Fixes: Timeout Fixes: 4832/clusterfuzz-testcase-4699096590843904 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 725353525e73bbe5b6b4d01528252675f2417a02) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/ulti.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libavcodec/ulti.c b/libavcodec/ulti.c
index e6f4374981..9e4c088b10 100644
--- a/libavcodec/ulti.c
+++ b/libavcodec/ulti.c
@@ -50,6 +50,8 @@ static av_cold int ulti_decode_init(AVCodecContext *avctx)
s->width = avctx->width;
s->height = avctx->height;
s->blocks = (s->width / 8) * (s->height / 8);
+ if (s->blocks == 0)
+ return AVERROR_INVALIDDATA;
avctx->pix_fmt = AV_PIX_FMT_YUV410P;
s->ulti_codebook = ulti_codebook;