diff --git a/libavformat/mvdec.c b/libavformat/mvdec.c index 6e7c3ffd11..0f09498b2b 100644 --- a/libavformat/mvdec.c +++ b/libavformat/mvdec.c @@ -57,7 +57,12 @@ static int mv_probe(AVProbeData *p) static char *var_read_string(AVIOContext *pb, int size) { int n; - char *str = av_malloc(size + 1); + char *str; + + if (size < 0 || size == INT_MAX) + return NULL; + + str = av_malloc(size + 1); if (!str) return NULL; n = avio_get_str(pb, size, str, size + 1);