diff options
-rw-r--r-- | libavformat/isom.c | 2 | ||||
-rw-r--r-- | libavformat/mov.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/libavformat/isom.c b/libavformat/isom.c index b0923c40cf..1748d7cb60 100644 --- a/libavformat/isom.c +++ b/libavformat/isom.c @@ -355,7 +355,7 @@ int ff_mov_lang_to_iso639(unsigned code, char to[4]) memset(to, 0, 4); /* is it the mangled iso code? */ /* see http://www.geocities.com/xhelmboyx/quicktime/formats/mp4-layout.txt */ - if (code > 138) { + if (code >= 0x400 && code != 0x7fff) { for (i = 2; i >= 0; i--) { to[i] = 0x60 + (code & 0x1f); code >>= 5; diff --git a/libavformat/mov.c b/libavformat/mov.c index dc5b42b2d3..6f72ce8144 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -298,7 +298,7 @@ static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) if (parse) parse(c, pb, str_size, key); else { - if (data_type == 3 || (data_type == 0 && langcode < 0x800)) { // MAC Encoded + if (data_type == 3 || (data_type == 0 && (langcode < 0x400 || langcode == 0x7fff))) { // MAC Encoded mov_read_mac_string(c, pb, str_size, str, sizeof(str)); } else { avio_read(pb, str, str_size); |