summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Crête <olivier.crete@collabora.com>2017-05-23 00:53:23 +0200
committerTim-Philipp Müller <tim@centricular.com>2017-12-02 15:10:27 +0000
commit0500807b557cd1744b3df612d18e21c86d5a0c88 (patch)
treea86882cb8ca47c4859e1dfe57be7509e8c3d6dc7
parenta001f6d58710db2848c415402424f1b34ee9f5d6 (diff)
aggregator: Set flow to FLUSHING on pad stop
Fixes a rare race where the pad is being stopped while doing a query.
-rw-r--r--libs/gst/base/gstaggregator.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libs/gst/base/gstaggregator.c b/libs/gst/base/gstaggregator.c
index ec4be9269..2afa3c34f 100644
--- a/libs/gst/base/gstaggregator.c
+++ b/libs/gst/base/gstaggregator.c
@@ -1493,7 +1493,9 @@ gst_aggregator_stop_pad (GstAggregator * self, GstAggregatorPad * pad,
gst_aggregator_pad_flush (pad, self);
PAD_LOCK (pad);
+ pad->priv->flow_return = GST_FLOW_FLUSHING;
pad->priv->negotiated = FALSE;
+ PAD_BROADCAST_EVENT (pad);
PAD_UNLOCK (pad);
return TRUE;