basesrc: Don't send error if negotiate fails because we are flushing

Negotiation may be aborted by a flush from another thread that need to
stop the task (i.e. seek). Check that case and silently pause the task.

https://bugzilla.gnome.org/show_bug.cgi?id=696357
This commit is contained in:
Nicolas Dufresne 2013-03-21 21:00:54 -04:00 committed by Sebastian Dröge
parent a76885f333
commit 253035d395

View file

@ -2581,6 +2581,9 @@ gst_base_src_loop (GstPad * pad)
if (gst_pad_check_reconfigure (pad)) {
if (!gst_base_src_negotiate (src)) {
gst_pad_mark_reconfigure (pad);
if (GST_PAD_IS_FLUSHING (pad))
goto flushing;
else
goto negotiate_failed;
}
}