diff --git a/libavformat/smacker.c b/libavformat/smacker.c index 56a75d8fa1..a6a6933e6b 100644 --- a/libavformat/smacker.c +++ b/libavformat/smacker.c @@ -327,7 +327,7 @@ static int smacker_read_packet(AVFormatContext *s, AVPacket *pkt) } flags >>= 1; } - if (frame_size < 0) + if (frame_size < 0 || frame_size >= INT_MAX/2) return AVERROR_INVALIDDATA; if (av_new_packet(pkt, frame_size + 769)) return AVERROR(ENOMEM);