pad-monitor: reset buffer timestamp data after a flush

As the pad/element also clears its internal state
This commit is contained in:
Thiago Santos 2013-08-27 18:23:09 -03:00
parent 49d39be022
commit 103bf74768

View file

@ -1047,6 +1047,18 @@ gst_validate_pad_monitor_add_expected_newsegment (GstValidatePadMonitor *
gst_iterator_free (iter);
}
static void
gst_validate_pad_monitor_flush (GstValidatePadMonitor * pad_monitor)
{
pad_monitor->current_timestamp = GST_CLOCK_TIME_NONE;
pad_monitor->current_duration = GST_CLOCK_TIME_NONE;
pad_monitor->timestamp_range_start = GST_CLOCK_TIME_NONE;
pad_monitor->timestamp_range_end = GST_CLOCK_TIME_NONE;
pad_monitor->has_segment = FALSE;
pad_monitor->is_eos = FALSE;
gst_caps_replace (&pad_monitor->last_caps, NULL);
}
/* common checks for both sink and src event functions */
static void
gst_validate_pad_monitor_common_event_check (GstValidatePadMonitor *
@ -1093,6 +1105,9 @@ gst_validate_pad_monitor_common_event_check (GstValidatePadMonitor *
"Unexpected flush-stop %p" GST_PTR_FORMAT, event);
}
pad_monitor->pending_flush_stop = FALSE;
/* cleanup our data */
gst_validate_pad_monitor_flush (pad_monitor);
}
break;
default: