[vlc-commits] packetizer: a52: fix endless loop (again)

Thomas Guillem git at videolan.org
Fri Jan 13 11:57:26 CET 2017


vlc | branch: master | Thomas Guillem <thomas at gllm.fr> | Fri Jan 13 11:33:05 2017 +0100| [c0c34ee18075cec90d19fcfe7966a39862f5690a] | committer: Thomas Guillem

packetizer: a52: fix endless loop (again)

The "(Not useful if we went through NEXT_SYNC)" assumption is false.  If the
input is not packetized (like from demux/mpeg/es.c), nothing assure that we
have enough data.

see 1151319

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

 modules/packetizer/a52.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/modules/packetizer/a52.c b/modules/packetizer/a52.c
index c8285f8..d61a0c0 100644
--- a/modules/packetizer/a52.c
+++ b/modules/packetizer/a52.c
@@ -249,12 +249,11 @@ static block_t *PacketizeBlock( decoder_t *p_dec, block_t **pp_block )
                 block_SkipByte( &p_sys->bytestream );
                 break;
             }
-            p_sys->i_state = STATE_SEND_DATA;
+            p_sys->i_state = STATE_GET_DATA;
             break;
 
         case STATE_GET_DATA:
-            /* Make sure we have enough data.
-             * (Not useful if we went through NEXT_SYNC) */
+            /* Make sure we have enough data. */
             if( block_WaitBytes( &p_sys->bytestream,
                                  p_sys->frame.i_size ) != VLC_SUCCESS )
             {



More information about the vlc-commits mailing list