diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2022-07-03 03:31:47 +0300 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2022-07-12 23:30:12 +0300 |
commit | f0aeea08a9310da79ef05cd4b631931aa699f751 (patch) | |
tree | 54c8effdb1616d07e008eb03be1d317baff8963a | |
parent | 6d40df7ea76680071ef7ed96731a21a0f0f83407 (diff) |
avcodec/wnv1: Check for width =1
The decoder only outputs pixels for width >1 images, fail early
Fixes: Timeout
Fixes: 48298/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_WNV1_fuzzer-6198626319204352
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 d98d5a436aa70d3cef8f914c0467ef2fb2dd1dfc)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavcodec/wnv1.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libavcodec/wnv1.c b/libavcodec/wnv1.c index 915e9c7dc9..291be78cc8 100644 --- a/libavcodec/wnv1.c +++ b/libavcodec/wnv1.c @@ -136,6 +136,9 @@ static av_cold int decode_init(AVCodecContext *avctx) { static VLC_TYPE code_table[1 << CODE_VLC_BITS][2]; + if (avctx->width <= 1) + return AVERROR_INVALIDDATA; + avctx->pix_fmt = AV_PIX_FMT_YUV422P; code_vlc.table = code_table; |