mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avcodec/msvideo1: Check buffer size before re-getting the frame
Fixes timeout Fixes: 1306/clusterfuzz-testcase-minimized-6152296217968640 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
92f4a4bf29
commit
cabfed6895
@ -301,6 +301,12 @@ static int msvideo1_decode_frame(AVCodecContext *avctx,
|
|||||||
s->buf = buf;
|
s->buf = buf;
|
||||||
s->size = buf_size;
|
s->size = buf_size;
|
||||||
|
|
||||||
|
// Discard frame if its smaller than the minimum frame size
|
||||||
|
if (buf_size < (avctx->width/4) * (avctx->height/4) / 512) {
|
||||||
|
av_log(avctx, AV_LOG_ERROR, "Packet is too small\n");
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
}
|
||||||
|
|
||||||
if ((ret = ff_reget_buffer(avctx, s->frame)) < 0)
|
if ((ret = ff_reget_buffer(avctx, s->frame)) < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user