decodebin3: Release selection lock when pushing EOS 39/255839/2 submit/tizen_6.0/20210324.231426 submit/tizen_6.0/20210405.013148
authorEdward Hervey <edward@centricular.com>
Fri, 11 Dec 2020 09:13:59 +0000 (10:13 +0100)
committerGilbok Lee <gilbok.lee@samsung.com>
Wed, 24 Mar 2021 07:19:59 +0000 (07:19 +0000)
commit5f0f96952a6bfc13cc7e51752b686a8ddf1f0a64
tree0ddc56de2e95edd3d46e3cb1f7445784a090b174
parente81e47479b49ffe98c3614ad2295c56e28e0b282
decodebin3: Release selection lock when pushing EOS

We can't keep the lock otherwise this would lock other actions. In order to keep
it safe, we grab a list of peer pads to send EOS to with the lock taken, then
send to the peer pads with the lock released.

Also make sure the selection lock is taken for another call to this function

Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/847

Change-Id: I8c811ff53b77ed62b79a3e90f1f4dab616f02e36
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/971>
gst/playback/gstdecodebin3-parse.c
packaging/gst-plugins-base.spec