summaryrefslogtreecommitdiff
path: root/libavcodec/wnv1.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2022-07-03 02:31:47 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2022-07-12 21:55:22 +0200
commitd98d5a436aa70d3cef8f914c0467ef2fb2dd1dfc (patch)
tree85898eea688562fee5a5c3a09331f6d12eb2252a /libavcodec/wnv1.c
parenteee7364c90699f50a36aaada38c52ccc0d6bf501 (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>
Diffstat (limited to 'libavcodec/wnv1.c')
-rw-r--r--libavcodec/wnv1.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libavcodec/wnv1.c b/libavcodec/wnv1.c
index 0cf2181a48..6251c00187 100644
--- a/libavcodec/wnv1.c
+++ b/libavcodec/wnv1.c
@@ -125,6 +125,9 @@ static av_cold int decode_init(AVCodecContext *avctx)
{
static AVOnce init_static_once = AV_ONCE_INIT;
+ if (avctx->width <= 1)
+ return AVERROR_INVALIDDATA;
+
avctx->pix_fmt = AV_PIX_FMT_YUV422P;
ff_thread_once(&init_static_once, wnv1_init_static);