gst/matroska/matroska-mux.c: Update the track duration if the old one was invalid.
authorSjoerd Simons <sjoerd@luon.net>
Thu, 8 May 2008 08:15:34 +0000 (08:15 +0000)
committerSebastian Dröge <slomo@circular-chaos.org>
Thu, 8 May 2008 08:15:34 +0000 (08:15 +0000)
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/matroska/matroska-mux.c: (gst_matroska_mux_collected):
Update the track duration if the old one was invalid.
Fixes bug #532117.

ChangeLog
gst/matroska/matroska-mux.c

index 21dfe2f..2a50ccf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2008-05-08  Sebastian Dröge  <slomo@circular-chaos.org>
+
+       Patch by: Sjoerd Simons <sjoerd at luon dot net>
+
+       * gst/matroska/matroska-mux.c: (gst_matroska_mux_collected):
+       Update the track duration if the old one was invalid.
+       Fixes bug #532117.
+
 2008-05-07  Ole André Vadla Ravnås  <ole.andre.ravnas at tandberg com>
 
        * gst/rtp/gstrtph264pay.c (gst_rtp_h264_pay_parse_sps_pps):
index 098b2fc..dd3fbd3 100644 (file)
@@ -1972,7 +1972,7 @@ gst_matroska_mux_collected (GstCollectPads * pads, gpointer user_data)
       else if (best->track->default_duration)
         end_ts += best->track->default_duration;
 
-      if (end_ts > best->end_ts)
+      if (!GST_CLOCK_TIME_IS_VALID (best->end_ts) || end_ts > best->end_ts)
         best->end_ts = end_ts;
 
       if (G_UNLIKELY (best->start_ts == GST_CLOCK_TIME_NONE ||