mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 09:10:36 +00:00
typefind: Only push a CAPS event downstream if the sinkpad is not in PULL mode
The other signal handlers of the type-found signal might have reactivated typefind in PULL mode already, pushing a CAPS event at that point would cause deadlocks and is in general unexpected by elements that are in PULL mode. https://bugzilla.gnome.org/show_bug.cgi?id=765906
This commit is contained in:
parent
58f964da96
commit
5e43ee5989
1 changed files with 4 additions and 0 deletions
|
@ -179,6 +179,10 @@ gst_type_find_element_have_type (GstTypeFindElement * typefind,
|
|||
GST_INFO_OBJECT (typefind, "found caps %" GST_PTR_FORMAT ", probability=%u",
|
||||
caps, probability);
|
||||
|
||||
/* Do nothing if downstream is pulling from us */
|
||||
if (GST_PAD_MODE (typefind->src) == GST_PAD_MODE_PULL)
|
||||
return;
|
||||
|
||||
GST_OBJECT_LOCK (typefind);
|
||||
|
||||
/* Now actually send the CAPS event downstream.
|
||||
|
|
Loading…
Reference in a new issue