1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-26 19:01:44 +02:00

workaround for broken files created by previous versions of asfenc.

Patch by Anton Khirnov, wyskas gmail

Originally committed as revision 21840 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Anton Khirnov 2010-02-15 21:14:47 +00:00 committed by Carl Eugen Hoyos
parent cf55f59d5e
commit 4a3104a96a

View File

@ -436,9 +436,13 @@ static int asf_read_header(AVFormatContext *s, AVFormatParameters *ap)
char name[1024]; char name[1024];
name_len = get_le16(pb); name_len = get_le16(pb);
if (name_len%2) // must be even, broken lavf versions wrote len-1
name_len += 1;
get_str16_nolen(pb, name_len, name, sizeof(name)); get_str16_nolen(pb, name_len, name, sizeof(name));
value_type = get_le16(pb); value_type = get_le16(pb);
value_len = get_le16(pb); value_len = get_le16(pb);
if (value_len%2)
value_len += 1;
get_tag(s, name, value_type, value_len); get_tag(s, name, value_type, value_len);
} }
} else if (!guidcmp(&g, &ff_asf_metadata_header)) { } else if (!guidcmp(&g, &ff_asf_metadata_header)) {