avcodec/vp9: Fix memleak

Fixes: 485523353/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VP9_fuzzer-4582329227214848

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer
2026-02-22 22:41:29 +01:00
committed by James Almer
parent a4d40f853a
commit 87c371e2ff

View File

@@ -1607,10 +1607,12 @@ static int vp9_decode_frame(AVCodecContext *avctx, AVFrame *frame,
s->frame_header = &rf->header;
if ((ret = decode_frame_header(avctx, data, size, &ref)) < 0) {
ff_cbs_fragment_reset(&s->current_frag);
return ret;
} else if (ret == 0) {
if (!s->s.refs[ref].f) {
av_log(avctx, AV_LOG_ERROR, "Requested reference %d not available\n", ref);
ff_cbs_fragment_reset(&s->current_frag);
return AVERROR_INVALIDDATA;
}
for (int i = 0; i < 8; i++)