From db3ee6cc9674b069c997687e8232685a534b9bdc Mon Sep 17 00:00:00 2001 From: Baptiste Coudurier Date: Fri, 21 Mar 2008 11:04:54 +0000 Subject: [PATCH] simplify, and only stop parsing when non streamable Originally committed as revision 12534 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/mov.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index f9ddc48d3e..8d87f24ff2 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -191,7 +191,7 @@ static int mov_read_default(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) 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 @@ static int mov_read_mdat(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) 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 @@ static int mov_read_moov(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) /* 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 */ }