gstreamer/plugins/elements
Edward Hervey 4eef67cc7e queue2: Refuse all serialized queries when posting buffering messages
When posting buffering messages there are no safe places or timing to avoid
deadlocks.

Previously the code was trying to be "smart" by only forwarding serialized
queries if the queue was empty ... but that could happen when queue2 hadn't yet
posted a 100% buffering message. Meaning the pipeline might be paused and
pushing a serialized query downstream might never complete.

Therefore let's completely disable forwarding of serialized queries when
`queue2` is used as a buffering element (meaning `ALLOCATION` and `DRAIN`
queries).

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/796>
2021-04-16 11:41:26 +02:00
..
gstcapsfilter.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstcapsfilter.h capsfilter: optimisation: avoid unnecessary gst_pad_has_current_caps() checks 2016-03-24 14:48:40 +02:00
gstclocksync.c clocksync: Fix providing system clock by default 2021-04-08 07:27:07 +00:00
gstclocksync.h clocksync: Add a new property "sync-to-first" for automatic ts-offset setup 2021-03-18 14:22:44 +00:00
gstconcat.c concat: Fix active-pad property doc typo 2021-01-07 11:57:51 +00:00
gstconcat.h concat: Add adjust-base property 2015-06-22 14:11:30 +02:00
gstcoreelementselements.h coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstcoreelementsplugin.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstdataurisrc.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstdataurisrc.h Fix FSF address 2012-11-04 00:09:59 +00:00
gstdownloadbuffer.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstdownloadbuffer.h downloadbuffer: remove unused struct member 2017-07-26 14:20:44 +01:00
gstelements_private.c filesink: Fix for updating the index of memory to write in the next iteration 2020-03-31 19:05:30 +09:00
gstelements_private.h filesink/fdsink: Write 1 iovec directly without copying if there's no writev() support 2020-03-26 11:31:03 +00:00
gstfakesink.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstfakesink.h Revert "Potential GstContext regression" 2013-09-24 12:47:52 +02:00
gstfakesrc.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstfakesrc.h Port gtk-doc comments to their equivalent markdown syntax 2017-01-27 16:36:38 -03:00
gstfdsink.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstfdsink.h fdsink: remove unused struct member bytes_written 2020-05-20 14:10:14 +00:00
gstfdsrc.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstfdsrc.h Fix FSF address 2012-11-03 20:44:48 +00:00
gstfilesink.c filesrc/filesink: Use g_open/g_fopen and g_close instead of ours 2021-02-02 19:17:49 +09:00
gstfilesink.h filesink: Add a new full buffer mode to filesink 2020-03-26 11:31:03 +00:00
gstfilesrc.c filesrc/filesink: Use g_open/g_fopen and g_close instead of ours 2021-02-02 19:17:49 +09:00
gstfilesrc.h Fix FSF address 2012-11-03 20:44:48 +00:00
gstfunnel.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstfunnel.h gstbasetranform: replace GST_BASE_TRANSFORM with GST_BASE_TRANSFORM_CAST 2017-11-24 13:39:39 +01:00
gstidentity.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstidentity.h identity: Add a stats property 2020-10-16 15:43:56 +00:00
gstinputselector.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstinputselector.h inputselector: Never reset active pad set from the user 2020-05-14 22:15:12 +00:00
gstmultiqueue.c gst: don't use volatile to mean atomic 2021-03-19 04:15:19 +00:00
gstmultiqueue.h multiqueue: Make min-interleave-time a configurable property 2017-03-09 12:09:57 +11:00
gstoutputselector.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstoutputselector.h output-selector: Drop duplicated seek events 2020-05-13 17:59:06 -04:00
gstqueue.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstqueue.h queue/queue2: Protect against spurious condition variable wakeups 2016-12-13 21:03:54 +02:00
gstqueue2.c queue2: Refuse all serialized queries when posting buffering messages 2021-04-16 11:41:26 +02:00
gstqueue2.h gst: don't use volatile to mean atomic 2021-03-19 04:15:19 +00:00
gstsparsefile.c sparsefile: fix possible crash when seeking 2020-05-25 08:35:32 +00:00
gstsparsefile.h elements: don't depend on libgio just for g_io_error_from_errno() 2014-05-13 20:06:48 +01:00
gststreamiddemux.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gststreamiddemux.h docs: add StreamidDemux to documentation 2015-07-08 17:07:49 +01:00
gsttee.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gsttee.h tee: Add allow-not-linked property 2015-03-26 10:46:26 +01:00
gsttypefindelement.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gsttypefindelement.h typefind: copy seqnum to new segment event 2020-11-10 21:39:13 +10:00
gstvalve.c coreelements: allow per features registration 2020-12-10 12:45:16 +01:00
gstvalve.h gst: don't use volatile to mean atomic 2021-03-19 04:15:19 +00:00
meson.build coreelements: allow per features registration 2020-12-10 12:45:16 +01:00