From a9b1aa125530971573d305890e8d25c94f94c9c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 17 Nov 2016 19:59:26 +0200 Subject: [PATCH] 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 --- gst/monoscope/gstmonoscope.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gst/monoscope/gstmonoscope.c b/gst/monoscope/gstmonoscope.c index 3e702562cd..8aebbdbfbc 100644 --- a/gst/monoscope/gstmonoscope.c +++ b/gst/monoscope/gstmonoscope.c @@ -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; }