aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2018-01-15 19:03:48 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2018-01-28 15:33:09 +0100
commit540f4467c8258b29c52be4dc0506a83ac29888bc (patch)
treee49d777cf779347e48c8c7ed995de3d5f969cdf2
parentbae4d39437fea9a7bd3bb30d161f0a23dc862c55 (diff)
downloadffmpeg-540f4467c8258b29c52be4dc0506a83ac29888bc.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;