Edward Hervey 6454698f82 urisourcebin: Make parsebin activation more reliable
`parsebin` is potentially added by a `typefind` callback.

That `typefind` was activated by a `READY_TO_PAUSED` state change on `urisourcebin`

We want to ensure that it is the "setup_parsebin_for_slot" method that activates
the underlying `parsebin`, and not the external state-change.

Otherwise we would risk a potential deadlock where elements activating in
`parsebin`, and which would cause the upstream `typefind` to switch scheduling
mode, would not be able to acquire the STREAM_LOCK of the `typefind` task.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4225

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8511>
2025-03-12 16:15:20 +00:00
..
2025-02-28 13:49:11 +00:00