correctly handle maximum streams limit
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>
Tue, 2 Jun 2009 07:30:19 +0000 (07:30 +0000)
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>
Tue, 2 Jun 2009 07:30:19 +0000 (07:30 +0000)
Originally committed as revision 19074 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/mpegts.c

index d60a25b..df28157 100644 (file)
@@ -925,7 +925,8 @@ static int mpegts_push_data(MpegTSFilter *filter,
                     code = pes->header[3] | 0x100;
                     dprintf(pes->stream, "pid=%x pes_code=%#x\n", pes->pid, code);
 
-                    if ((pes->st && pes->st->discard == AVDISCARD_ALL) ||
+                    if ((!pes->st && pes->stream->nb_streams == MAX_STREAMS) ||
+                        (pes->st && pes->st->discard == AVDISCARD_ALL) ||
                         code == 0x1be) /* padding_stream */
                         goto skip;