summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--gst/matroska/matroska-mux.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 21dfe2f9..2a50ccf0 100644
--- 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):
diff --git a/gst/matroska/matroska-mux.c b/gst/matroska/matroska-mux.c
index 098b2fc0..dd3fbd32 100644
--- a/gst/matroska/matroska-mux.c
+++ b/gst/matroska/matroska-mux.c
@@ -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 ||