additional recovery for the badly broken streams
authorRoman Shaposhnik <roman@shaposhnik.org>
Mon, 5 Jan 2009 17:50:13 +0000 (17:50 +0000)
committerRoman Shaposhnik <roman@shaposhnik.org>
Mon, 5 Jan 2009 17:50:13 +0000 (17:50 +0000)
Originally committed as revision 16438 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/dv.c

index f7a0146..a0e07e9 100644 (file)
@@ -430,6 +430,8 @@ static int dv_read_packet(AVFormatContext *s, AVPacket *pkt)
     size = dv_get_packet(c->dv_demux, pkt);
 
     if (size < 0) {
+        if (!c->dv_demux->sys)
+            return AVERROR(EIO);
         size = c->dv_demux->sys->frame_size;
         if (get_buffer(s->pb, c->buf, size) <= 0)
             return AVERROR(EIO);