oggdec: Abort Ogg header parsing when encountering a data packet.

Fixes Bugzilla #11.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
This commit is contained in:
Reimar Döffinger 2011-07-04 02:57:47 +02:00 committed by Diego Biurrun
parent e3759c567d
commit 0a94020b5b
1 changed files with 1 additions and 4 deletions

View File

@ -373,8 +373,7 @@ static int ogg_packet(AVFormatContext *s, int *str, int *dstart, int *dsize,
// We have reached the first non-header packet in this stream.
// Unfortunately more header packets may still follow for others,
// so we reset this later unless we are done with the headers
// for all streams.
// but if we continue with header parsing we may lose data packets.
ogg->headers = 1;
// Update the header state for all streams and
@ -383,8 +382,6 @@ static int ogg_packet(AVFormatContext *s, int *str, int *dstart, int *dsize,
s->data_offset = os->sync_pos;
for (i = 0; i < ogg->nstreams; i++) {
struct ogg_stream *cur_os = ogg->streams + i;
if (cur_os->header > 0)
ogg->headers = 0;
// if we have a partial non-header packet, its start is
// obviously at or after the data start