queue: Only calculate level if we have valid levels

Doing calculations with GST_CLOCK_STIME_NONE would result in
completely bogus levels
This commit is contained in:
Edward Hervey 2017-11-23 15:28:39 +01:00 committed by Edward Hervey
parent 7ea4152323
commit 922e048379

View file

@ -547,7 +547,8 @@ update_time_level (GstQueue * queue)
GST_LOG_OBJECT (queue, "sink %" GST_STIME_FORMAT ", src %" GST_STIME_FORMAT,
GST_STIME_ARGS (sink_time), GST_STIME_ARGS (src_time));
if (sink_time >= src_time)
if (GST_CLOCK_STIME_IS_VALID (src_time)
&& GST_CLOCK_STIME_IS_VALID (sink_time) && sink_time >= src_time)
queue->cur_level.time = sink_time - src_time;
else
queue->cur_level.time = 0;