demux: asf: fix multiple compressed payload regression (fix #9846)
authorFrancois Cartegnie <fcvlcdev@free.fr>
Fri, 15 Nov 2013 15:12:47 +0000 (00:12 +0900)
committerFelix Paul Kühne <fkuehne@videolan.org>
Sun, 9 Feb 2014 16:44:50 +0000 (17:44 +0100)
Regression introduced by 6eddafe741954803ec2928d26fb7566bd07a3601

(cherry picked from commit 1c7b3420ede14f56b1c340fbfcd9bc2db9d8e4e3)
Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
modules/demux/asf/asf.c

index 248666f..0ee2488 100644 (file)
@@ -548,7 +548,10 @@ static int DemuxPayload(demux_t *p_demux, struct asf_packet_t *pkt, int i_payloa
     {
         int i_sub_payload_data_length = i_payload_data_length;
         if( i_replicated_data_length == 1 )
+        {
             i_sub_payload_data_length = pkt->p_peek[pkt->i_skip++];
+            i_payload_data_length--;
+        }
 
         stream_Read(p_demux->s, NULL, pkt->i_skip);