From: Olivier CrĂȘte Date: Sat, 7 Mar 2015 02:12:13 +0000 (-0500) Subject: aggregator: Be more aggressive with invalid replies to our latency query X-Git-Tag: 1.16.2~574^2~108 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=46e33e84fd56ffd66984872901b595aca5813429;hp=87b25fb7a53e1a61cc1a30f6cfb109faeeb6cde5;p=platform%2Fupstream%2Fgstreamer.git aggregator: Be more aggressive with invalid replies to our latency query https://bugzilla.gnome.org/show_bug.cgi?id=745768 --- diff --git a/libs/gst/base/gstaggregator.c b/libs/gst/base/gstaggregator.c index c8d179c..788c84a 100644 --- a/libs/gst/base/gstaggregator.c +++ b/libs/gst/base/gstaggregator.c @@ -1129,15 +1129,19 @@ gst_aggregator_query_latency (GstAggregator * self, GstQuery * query) our_latency = self->priv->latency; if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (min))) { - GST_WARNING_OBJECT (self, "Invalid minimum latency, using 0"); - min = 0; + GST_ERROR_OBJECT (self, "Invalid minimum latency %" GST_TIME_FORMAT + ". Please file a bug at " PACKAGE_BUGREPORT ".", GST_TIME_ARGS (min)); + SRC_UNLOCK (self); + return FALSE; } - if (G_UNLIKELY (min > max)) { - GST_WARNING_OBJECT (self, "Minimum latency is greater than maximum latency " - "(%" G_GINT64_FORMAT " > %" G_GINT64_FORMAT "). " - "Clamping it at the maximum latency", min, max); - min = max; + if (min > max && GST_CLOCK_TIME_IS_VALID (max)) { + GST_ELEMENT_WARNING (self, CORE, CLOCK, (NULL), + ("Impossible to configure latency: max %" GST_TIME_FORMAT " < min %" + GST_TIME_FORMAT ". Add queues or other buffering elements.", + GST_TIME_ARGS (max), GST_TIME_ARGS (min))); + SRC_UNLOCK (self); + return FALSE; } self->priv->latency_live = live;