aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat/wtv.c
diff options
context:
space:
mode:
authorPeter Ross <pross@xvid.org>2011-02-05 12:10:10 +1100
committerMichael Niedermayer <michaelni@gmx.at>2011-02-06 20:31:45 +0100
commit699d55fb126f1e2199aef533bbc2cd3418c9e031 (patch)
tree78237b6ddc80321b52539b6e9e927dec7ecf3e30 /libavformat/wtv.c
parent3c90abf40fd3a1dbea583c574e7d0d10229e9628 (diff)
downloadffmpeg-699d55fb126f1e2199aef533bbc2cd3418c9e031.tar.gz
wtv: do not use flag in stream_guid chunk to determine if stream is valid, as this method is unreliable
This fixes roundup issue 2556. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com> (cherry picked from commit e4f85b849913794395bb03dfc09546cd41b10882)
Diffstat (limited to 'libavformat/wtv.c')
-rw-r--r--libavformat/wtv.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/libavformat/wtv.c b/libavformat/wtv.c
index e0881d3bf5..c10d9ec3e7 100644
--- a/libavformat/wtv.c
+++ b/libavformat/wtv.c
@@ -783,18 +783,14 @@ static int parse_chunks(AVFormatContext *s, int mode, int64_t seekts, int *len_p
if (ff_find_stream_index(s, sid) < 0) {
ff_asf_guid mediatype, subtype, formattype;
int size;
- consumed += 20;
- url_fskip(pb, 16);
- if (get_le32(pb)) {
- url_fskip(pb, 8);
+ url_fskip(pb, 28);
ff_get_guid(pb, &mediatype);
ff_get_guid(pb, &subtype);
url_fskip(pb, 12);
ff_get_guid(pb, &formattype);
size = get_le32(pb);
parse_media_type(s, 0, sid, mediatype, subtype, formattype, size);
- consumed += 72 + size;
- }
+ consumed += 92 + size;
}
} else if (!ff_guidcmp(g, stream2_guid)) {
int stream_index = ff_find_stream_index(s, sid);