]> git.sesse.net Git - ffmpeg/commitdiff
avcodec/ansi: Check initial dimensions
authorMichael Niedermayer <michael@niedermayer.cc>
Sat, 19 Sep 2020 19:17:32 +0000 (21:17 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Thu, 15 Oct 2020 20:53:56 +0000 (22:53 +0200)
Fixes: Timeout (minutes to less than 1sec)
Fixes: 25682/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ANSI_fuzzer-6320712032452608
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/ansi.c

index 272185230dc996ef9911d949c587e892b1d25597..3a461eec260dcde819914bc728c6d7c00191cc12 100644 (file)
@@ -475,6 +475,11 @@ static av_cold int decode_close(AVCodecContext *avctx)
     return 0;
 }
 
+static const AVCodecDefault ansi_defaults[] = {
+    { "max_pixels", "640*480" },
+    { NULL },
+};
+
 AVCodec ff_ansi_decoder = {
     .name           = "ansi",
     .long_name      = NULL_IF_CONFIG_SMALL("ASCII/ANSI art"),
@@ -486,4 +491,5 @@ AVCodec ff_ansi_decoder = {
     .decode         = decode_frame,
     .capabilities   = AV_CODEC_CAP_DR1,
     .caps_internal  = FF_CODEC_CAP_INIT_THREADSAFE,
+    .defaults       = ansi_defaults,
 };