Mercurial > libavformat.hg
changeset 3166:c082ee7573b2 libavformat
simplify, and only stop parsing when non streamable
author | bcoudurier |
---|---|
date | Fri, 21 Mar 2008 11:04:54 +0000 |
parents | 2e6b97015947 |
children | 125b08d2ad59 |
files | mov.c |
diffstat | 1 files changed, 1 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/mov.c Fri Mar 21 11:02:13 2008 +0000 +++ b/mov.c Fri Mar 21 11:04:54 2008 +0000 @@ -191,7 +191,7 @@ offset_t start_pos = url_ftell(pb); int64_t left; err = mov_default_parse_table[i].parse(c, pb, a); - if (c->found_moov && c->found_mdat) + if (url_is_streamed(pb) && c->found_moov && c->found_mdat) break; left = a.size - url_ftell(pb) + start_pos; if (left > 0) /* skip garbage at atom end */ @@ -390,9 +390,6 @@ if(atom.size == 0) /* wrong one (MP4) */ return 0; c->found_mdat=1; - if(c->found_moov) - return 1; /* found both, just go */ - url_fskip(pb, atom.size); return 0; /* now go for moov */ } @@ -416,8 +413,6 @@ /* we parsed the 'moov' atom, we can terminate the parsing as soon as we find the 'mdat' */ /* so we don't parse the whole file if over a network */ c->found_moov=1; - if(c->found_mdat) - return 1; /* found both, just go */ return 0; /* now go for mdat */ }