basesink: fix emergency rendering timestamp tracking
authorMark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
Fri, 26 Feb 2010 14:46:50 +0000 (15:46 +0100)
committerMark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
Fri, 26 Feb 2010 14:48:41 +0000 (15:48 +0100)
Specifically, if all (including initial) buffers turn up late,
emergency rendering should also kick in appropriately.

Fixes #611087.

libs/gst/base/gstbasesink.c

index 76f7a33..685aa9d 100644 (file)
@@ -2602,7 +2602,7 @@ gst_base_sink_is_too_late (GstBaseSink * basesink, GstMiniObject * obj,
   }
 
 done:
-  if (!late) {
+  if (!late || !GST_CLOCK_TIME_IS_VALID (priv->last_in_time)) {
     priv->last_in_time = start;
   }
   return late;