From c9da676de43d778d62efb1cfa75544d770736d67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Reimar=20D=C3=B6ffinger?= Date: Wed, 30 Sep 2009 09:46:48 +0000 Subject: [PATCH] Disable parsing for ogg streams where no ogg header was found, if no header was found the parser was not initialized and thus will crash when trying to use it. Originally committed as revision 20093 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/oggdec.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libavformat/oggdec.c b/libavformat/oggdec.c index 5d42db765c..adf0ad051c 100644 --- a/libavformat/oggdec.c +++ b/libavformat/oggdec.c @@ -477,12 +477,17 @@ static int ogg_read_header (AVFormatContext * s, AVFormatParameters * ap) { struct ogg *ogg = s->priv_data; + int i; ogg->curidx = -1; //linear headers seek from start if (ogg_get_headers (s) < 0){ return -1; } + for (i = 0; i < ogg->nstreams; i++) + if (ogg->streams[i].header < 0) + ogg->streams[i].codec = NULL; + //linear granulepos seek from end ogg_get_length (s);