mpdparser: Only check stream->segments for a repeated last segment if we have a stati...
authorSebastian Dröge <sebastian@centricular.com>
Tue, 22 Sep 2015 12:43:44 +0000 (14:43 +0200)
committerSebastian Dröge <sebastian@centricular.com>
Tue, 22 Sep 2015 13:03:13 +0000 (15:03 +0200)
Otherwise we'll crash, trying to derefence NULL. And if we have no static list
of segments, we can't have repeated segments anyway.

Regression introduced by cfe2871a5e3c5b1db20470927642b776e055a87a

https://bugzilla.gnome.org/show_bug.cgi?id=755411

ext/dash/gstmpdparser.c

index 9172f55..743f7ff 100644 (file)
@@ -4057,7 +4057,8 @@ gst_mpd_client_has_next_segment (GstMpdClient * client,
   if (forward) {
     guint segments_count = gst_mpd_client_get_segments_counts (client, stream);
 
-    if (segments_count > 0 && stream->segment_index + 1 == segments_count) {
+    if (segments_count > 0 && stream->segments
+        && stream->segment_index + 1 == segments_count) {
       GstMediaSegment *segment;
 
       segment = g_ptr_array_index (stream->segments, stream->segment_index);