[FFmpeg-cvslog] avcodec/vc1dec: Clear block_index in vc1_decode_reset()

Michael Niedermayer git at videolan.org
Thu Jan 9 00:34:06 EET 2025


ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Sun Dec  1 23:30:55 2024 +0100| [251de1791e645f16e80b09d82999d4a5e24b1ad1] | committer: Michael Niedermayer

avcodec/vc1dec: Clear block_index in vc1_decode_reset()

Fixes: 377965565/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VC1_fuzzer-4504434689769472
Fixes: out of array access

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=251de1791e645f16e80b09d82999d4a5e24b1ad1
---

 libavcodec/vc1dec.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
index 5f1a5bd437..2c314e7b55 100644
--- a/libavcodec/vc1dec.c
+++ b/libavcodec/vc1dec.c
@@ -788,6 +788,7 @@ static av_cold void vc1_decode_reset(AVCodecContext *avctx)
     for (i = 0; i < 4; i++)
         av_freep(&v->sr_rows[i >> 1][i & 1]);
     ff_mpv_common_end(&v->s);
+    memset(v->s.block_index, 0, sizeof(v->s.block_index));
     av_freep(&v->mv_type_mb_plane);
     av_freep(&v->direct_mb_plane);
     av_freep(&v->forward_mb_plane);



More information about the ffmpeg-cvslog mailing list