]> git.sesse.net Git - vlc/commitdiff
hds: Ignore sentinel value at the end of the fragment table
authorAntti Ajanki <antti.ajanki@iki.fi>
Mon, 6 Oct 2014 16:12:57 +0000 (16:12 +0000)
committerTristan Matthews <tmatth@videolan.org>
Tue, 7 Oct 2014 13:46:47 +0000 (09:46 -0400)
generate_new_chunk() never proceeds to the last fragment run if the
sentinel is included.

Signed-off-by: Tristan Matthews <tmatth@videolan.org>
modules/stream_filter/hds/hds.c

index ff7d7a6bfc31c4e2b6c290b4a683455e6680f35c..1831d71abe29982663d92b0949bcfcda83decdac 100644 (file)
@@ -430,6 +430,15 @@ static uint8_t* parse_afrt( vlc_object_t* p_this,
         s->fragment_run_count++;
     }
 
+    if ( s->fragment_runs[s->fragment_run_count-1].fragment_number_start == 0 &&
+         s->fragment_runs[s->fragment_run_count-1].fragment_timestamp == 0 &&
+         s->fragment_runs[s->fragment_run_count-1].fragment_duration == 0 &&
+         s->fragment_runs[s->fragment_run_count-1].discont == 0 )
+    {
+        /* ignore sentinel value */
+        s->fragment_run_count--;
+    }
+
     return data_p;
 }