diff --git a/libavformat/mov.c b/libavformat/mov.c index 02b8aeb856..bfc5c44d87 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -385,7 +385,7 @@ static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) if (!key) return 0; - if (atom.size < 0) + if (atom.size < 0 || str_size >= INT_MAX/2) return AVERROR_INVALIDDATA; str_size = FFMIN3(sizeof(str)-1, str_size, atom.size);