[FFmpeg-devel] [PATCH] avcodec/h263dec: Check input size before GEOV/GEOX special case handling

Michael Niedermayer michael at niedermayer.cc
Fri Feb 25 17:29:40 EET 2022


Fixes: Timeout
Fixes: 44921/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MPEG4_fuzzer-6546588791603200

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
---
 libavcodec/h263dec.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libavcodec/h263dec.c b/libavcodec/h263dec.c
index e940b7f7c7..56a41f6d05 100644
--- a/libavcodec/h263dec.c
+++ b/libavcodec/h263dec.c
@@ -702,6 +702,7 @@ frame_end:
 
     if (s->last_picture_ptr || s->low_delay) {
         if (   pict->format == AV_PIX_FMT_YUV420P
+            && buf_size*16LL > s->mb_num
             && (s->codec_tag == AV_RL32("GEOV") || s->codec_tag == AV_RL32("GEOX"))) {
             int x, y, p;
             av_frame_make_writable(pict);
-- 
2.17.1



More information about the ffmpeg-devel mailing list