summaryrefslogtreecommitdiff
path: root/libavformat/mpegts.c
diff options
context:
space:
mode:
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>2011-02-27 16:19:50 -0800
committerAnton Khirnov <anton@khirnov.net>2011-05-12 13:04:58 +0200
commit6ae38aa3ce197905fb52a631c7dd1b2a5e535b3e (patch)
treeb20581d2779f0bf114c0f73da9790d94de00d633 /libavformat/mpegts.c
parent9c3f5ef663f2f36e951945969f99776bb12a3e7a (diff)
mpegts: do not output known sized packet if an unbounded packet is already queued.
Fix issue #2624. Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diffstat (limited to 'libavformat/mpegts.c')
-rw-r--r--libavformat/mpegts.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index cdefb84864..e20d6966e3 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -802,7 +802,7 @@ static int mpegts_push_data(MpegTSFilter *filter,
* a couple of seconds to milliseconds for properly muxed files.
* total_size is the number of bytes following pes_packet_length
* in the pes header, i.e. not counting the first 6 bytes */
- if (pes->total_size < MAX_PES_PAYLOAD &&
+ if (!ts->stop_parse && pes->total_size < MAX_PES_PAYLOAD &&
pes->pes_header_size + pes->data_index == pes->total_size + 6) {
ts->stop_parse = 1;
new_pes_packet(pes, ts->pkt);