]> git.sesse.net Git - ffmpeg/commitdiff
avcodec/arbc: Skip unchanged frames
authorMichael Niedermayer <michael@niedermayer.cc>
Sun, 14 Apr 2019 09:03:06 +0000 (11:03 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Wed, 24 Apr 2019 15:05:02 +0000 (17:05 +0200)
Fixes: Timeout (16sec -> 5sec)
Fixes: 14128/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ARBC_fuzzer-5767365721063424
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/arbc.c

index a8b0bb0d8bcc1e0fd86128f38cdf49e096483e31..08d3a0ae6b8266d35d2b9990b8dec2f30d37de19 100644 (file)
@@ -121,7 +121,7 @@ static int decode_frame(AVCodecContext *avctx, void *data,
     bytestream2_skip(&s->gb, 8);
     nb_segments = bytestream2_get_le16(&s->gb);
     if (nb_segments == 0)
-        keyframe = 0;
+        return avpkt->size;
 
     if (7 * nb_segments > bytestream2_get_bytes_left(&s->gb))
         return AVERROR_INVALIDDATA;