diff --git a/libavformat/mov.c b/libavformat/mov.c index 7fe639dd5ed2fe481ed0f890e9baf02f9dc22ba7..ed10a156251687839faf5868c49df5fe2fff9c80 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -161,7 +161,11 @@ static int mov_read_mac_string(MOVContext *c, AVIOContext *pb, int len, for (i = 0; i < len; i++) { uint8_t t, c = avio_r8(pb); - if (c < 0x80 && p < end) + + if (p >= end) + continue; + + if (c < 0x80) *p++ = c; else PUT_UTF8(mac_to_unicode[c-0x80], t, if (p < end) *p++ = t;);