[vlc-commits] demux: ts: always end PES on PUSI

Francois Cartegnie git at videolan.org
Thu Jan 23 21:12:52 CET 2020


vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Wed Jan 22 16:55:40 2020 +0100| [d7ace86225528b61508845d3bb762c617e3fc2a1] | committer: Francois Cartegnie

demux: ts: always end PES on PUSI

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d7ace86225528b61508845d3bb762c617e3fc2a1
---

 modules/demux/mpeg/ts_pes.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/modules/demux/mpeg/ts_pes.c b/modules/demux/mpeg/ts_pes.c
index 8b2d262d52..1ab32cad65 100644
--- a/modules/demux/mpeg/ts_pes.c
+++ b/modules/demux/mpeg/ts_pes.c
@@ -254,11 +254,11 @@ bool ts_pes_Gather( ts_pes_parse_callback *cb,
                     p_pes->gather.i_data_size == 0 );
 
             /* If we started reading a fixed size */
-            if( p_pes->gather.i_data_size > p_pes->gather.i_gathered )
+            if( p_pes->gather.i_data_size > p_pes->gather.i_gathered && !b_single_payload )
             {
                 const size_t i_remain = p_pes->gather.i_data_size - p_pes->gather.i_gathered;
                 /* Append whole block */
-                if( likely(p_pkt->i_buffer <= i_remain || b_single_payload) )
+                if( likely(p_pkt->i_buffer <= i_remain) )
                 {
                     b_ret |= ts_pes_Push( cb, p_pes, p_pkt, p_pes->gather.p_data == NULL );
                     p_pkt = NULL;



More information about the vlc-commits mailing list