avcodec/tmv: Move space check before buffer allocation

Fixes: Timeout
Fixes: 471664630/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TMV_fuzzer-5291752530706432

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-10 13:41:29 +01:00
parent f81d6479ec
commit 55bb6e2646
+3 -3
View File
@@ -47,9 +47,6 @@ static int tmv_decode_frame(AVCodecContext *avctx, AVFrame *frame,
unsigned x, y, fg, bg, c;
int ret;
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
return ret;
if (avpkt->size < 2*char_rows*char_cols) {
av_log(avctx, AV_LOG_ERROR,
"Input buffer too small, truncated sample?\n");
@@ -57,6 +54,9 @@ static int tmv_decode_frame(AVCodecContext *avctx, AVFrame *frame,
return AVERROR_INVALIDDATA;
}
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
return ret;
dst = frame->data[0];
memcpy(frame->data[1], ff_cga_palette, 16 * 4);