monoscope: Mark pad as needing reconfiguration again if it failed

And return FLUSHING instead of NOT_NEGOTIATED on flushing pads.

https://bugzilla.gnome.org/show_bug.cgi?id=774623
This commit is contained in:
Sebastian Dröge 2016-11-17 19:59:26 +02:00
parent 858d9f9706
commit a9b1aa1255

View file

@ -312,8 +312,13 @@ ensure_negotiated (GstMonoscope * monoscope)
/* we don't know an output format yet, pick one */
if (reconfigure || !gst_pad_has_current_caps (monoscope->srcpad)) {
if (!gst_monoscope_src_negotiate (monoscope))
return GST_FLOW_NOT_NEGOTIATED;
if (!gst_monoscope_src_negotiate (monoscope)) {
gst_pad_mark_reconfigure (monoscope->srcpad);
if (GST_PAD_IS_FLUSHING (monoscope->srcpad))
return GST_FLOW_FLUSHING;
else
return GST_FLOW_NOT_NEGOTIATED;
}
}
return GST_FLOW_OK;
}