PR #20168 opened by michaelni URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20168 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20168.patch
Fixes: crash (out of array access) Fixes: 435489659/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_APV_fuzzer-6194885205229568 CC: Mark Thompson <s...@jkqxz.net> Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> >From 7f56ae1a62601392fac06483c538fc53b8bfe14c Mon Sep 17 00:00:00 2001 From: Michael Niedermayer <mich...@niedermayer.cc> Date: Fri, 8 Aug 2025 01:05:05 +0200 Subject: [PATCH] avcodec/apv_decode: Check that tiles are within the frame Fixes: crash (out of array access) Fixes: 435489659/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_APV_fuzzer-6194885205229568 CC: Mark Thompson <s...@jkqxz.net> Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> --- libavcodec/apv_decode.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavcodec/apv_decode.c b/libavcodec/apv_decode.c index eb47298e2e..4b0d9eb357 100644 --- a/libavcodec/apv_decode.c +++ b/libavcodec/apv_decode.c @@ -306,6 +306,10 @@ static int apv_decode(AVCodecContext *avctx, AVFrame *output, return err; } + if ( tile_info->col_starts[tile_info->tile_cols] > FFALIGN(avctx->width , APV_MB_WIDTH) + || tile_info->row_starts[tile_info->tile_rows] > FFALIGN(avctx->height, APV_MB_HEIGHT)) + return AVERROR_INVALIDDATA; + err = ff_thread_get_buffer(avctx, output, 0); if (err < 0) return err; -- 2.49.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".