pulsesrc: don't fail when not negotiated yet

When get_time is called but we are not yet negotiated, return 0 instead of
posting an error. It's possible that the base class is still negotiating when
our get_time is called.
This commit is contained in:
Wim Taymans 2012-09-10 12:15:25 +02:00
parent 497ff16355
commit 619b2bd1a9

View file

@ -1721,10 +1721,11 @@ gst_pulsesrc_get_time (GstClock * clock, GstPulseSrc * src)
pa_usec_t time = 0; pa_usec_t time = 0;
pa_threaded_mainloop_lock (src->mainloop); pa_threaded_mainloop_lock (src->mainloop);
if (!src->stream)
if (gst_pulsesrc_is_dead (src, TRUE)) { goto unlock_and_out;
if (gst_pulsesrc_is_dead (src, TRUE))
goto unlock_and_out; goto unlock_and_out;
}
if (pa_stream_get_time (src->stream, &time) < 0) { if (pa_stream_get_time (src->stream, &time) < 0) {
GST_DEBUG_OBJECT (src, "could not get time"); GST_DEBUG_OBJECT (src, "could not get time");