diff options
author | Olivier CrĂȘte <olivier.crete@collabora.com> | 2017-07-13 18:38:34 -0400 |
---|---|---|
committer | Olivier CrĂȘte <olivier.crete@collabora.com> | 2017-10-20 18:55:28 +0200 |
commit | bb5a8ebec32b65d7ce8bbcb063020cc166fe57c3 (patch) | |
tree | 9f5b64b02d43c95b6d24b3a20f492996d80c8275 /gst-libs | |
parent | e5977b8794428ee1e37763738af5d880d9482fcd (diff) | |
download | gstreamer-plugins-bad-bb5a8ebec32b65d7ce8bbcb063020cc166fe57c3.tar.gz |
aggregator: Don't block if adding to the tail of the queue
If we're adding to the tail of the queue, it's because we're converting
a gap event, so don't block there it means we're calling from the output
thread.
https://bugzilla.gnome.org/show_bug.cgi?id=784911
Diffstat (limited to 'gst-libs')
-rw-r--r-- | gst-libs/gst/base/gstaggregator.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gst-libs/gst/base/gstaggregator.c b/gst-libs/gst/base/gstaggregator.c index 9f4c42f0b..3a642d8a6 100644 --- a/gst-libs/gst/base/gstaggregator.c +++ b/gst-libs/gst/base/gstaggregator.c @@ -2497,7 +2497,7 @@ gst_aggregator_pad_chain_internal (GstAggregator * self, aggpad->priv->first_buffer = FALSE; } - if (gst_aggregator_pad_has_space (self, aggpad) + if ((gst_aggregator_pad_has_space (self, aggpad) || !head) && aggpad->priv->flow_return == GST_FLOW_OK) { if (head) g_queue_push_head (&aggpad->priv->data, buffer); |