basesrc: No need to stop flushing in start_complete

The flushing state is handled a bit differently, there is no need
to stop flushing in start_complete. This would other result in
unlock_stop being called without unlock_start.

Unlike what the old comment says, there is no need to take the live
lock here, we are still single threaded at this point (app thread
or the state change thread). Also, we will wait for playing state
in create/getrange, no need to do that twice.

https://bugzilla.gnome.org/show_bug.cgi?id=794149
This commit is contained in:
Nicolas Dufresne 2018-03-07 11:16:00 -05:00
parent f204b57fa5
commit 12c5d903c9

View file

@ -3512,10 +3512,6 @@ gst_base_src_start_complete (GstBaseSrc * basesrc, GstFlowReturn ret)
GST_DEBUG_OBJECT (basesrc, "is random_access: %d", basesrc->random_access);
/* stop flushing now but for live sources, still block in the LIVE lock when
* we are not yet PLAYING */
gst_base_src_set_flushing (basesrc, FALSE);
gst_pad_mark_reconfigure (GST_BASE_SRC_PAD (basesrc));
GST_OBJECT_LOCK (basesrc->srcpad);