summaryrefslogtreecommitdiff
path: root/libavformat/mpegts.c
diff options
context:
space:
mode:
authorMarton Balint <cus@passwd.hu>2014-05-02 17:17:01 +0200
committerMarton Balint <cus@passwd.hu>2014-05-05 22:33:52 +0200
commit6c5375100c4fdb2f9b1a397b9969e580b2c4fdb0 (patch)
tree83a09a8d887b1395bc0975f0ed64b91133a3f9d8 /libavformat/mpegts.c
parenta78274329c0b1ea9964b4fa1bf6f4683e797e453 (diff)
mpegts: always reset pes packet state on new packet
Fixes ticket #3584. Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavformat/mpegts.c')
-rw-r--r--libavformat/mpegts.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index 7ed7bb4b2f..0a5ac68961 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -918,9 +918,10 @@ static int mpegts_push_data(MpegTSFilter *filter,
if (pes->state == MPEGTS_PAYLOAD && pes->data_index > 0) {
new_pes_packet(pes, ts->pkt);
ts->stop_parse = 1;
+ } else {
+ reset_pes_packet_state(pes);
}
pes->state = MPEGTS_HEADER;
- pes->data_index = 0;
pes->ts_packet_pos = pos;
}
p = buf;