mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-28 20:51:13 +00:00
Revert "bin: Hold the state lock while removing elements from a bin"
This reverts commit 7f70d7a945
This commit is contained in:
parent
a129b7df9c
commit
37edc474e3
1 changed files with 0 additions and 15 deletions
15
gst/gstbin.c
15
gst/gstbin.c
|
@ -1864,19 +1864,6 @@ gst_bin_remove (GstBin * bin, GstElement * element)
|
|||
if (G_UNLIKELY (bclass->remove_element == NULL))
|
||||
goto no_function;
|
||||
|
||||
/* We need to take the state lock here to ensure that we're
|
||||
* not currently just before setting the state of this child
|
||||
* element. Otherwise it can happen that we removed the element
|
||||
* here and e.g. set it to NULL state, and shortly afterwards
|
||||
* have another thread set it to a higher state again as part of
|
||||
* a state change for the whole bin.
|
||||
*
|
||||
* When adding an element to the bin this is not needed as we
|
||||
* require callers to always ensure after adding to the bin that
|
||||
* the new element is set to the correct state.
|
||||
*/
|
||||
GST_STATE_LOCK (bin);
|
||||
|
||||
GST_CAT_DEBUG (GST_CAT_PARENTAGE, "removing element %s from bin %s",
|
||||
GST_ELEMENT_NAME (element), GST_ELEMENT_NAME (bin));
|
||||
|
||||
|
@ -1884,8 +1871,6 @@ gst_bin_remove (GstBin * bin, GstElement * element)
|
|||
result = bclass->remove_element (bin, element);
|
||||
GST_TRACER_BIN_REMOVE_POST (bin, result);
|
||||
|
||||
GST_STATE_UNLOCK (bin);
|
||||
|
||||
return result;
|
||||
|
||||
/* ERROR handling */
|
||||
|
|
Loading…
Reference in a new issue