transcriberbin: Fix settings/state lock order violation in set_property()

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2463>
This commit is contained in:
Sebastian Dröge 2025-08-13 13:57:35 +03:00
parent 9710476c96
commit 61578518d4

View file

@ -2601,10 +2601,10 @@ impl ObjectImpl for TranscriberBin {
settings.cc_caps = value.get().expect("type checked upstream"); settings.cc_caps = value.get().expect("type checked upstream");
} }
"caption-source" => { "caption-source" => {
let s = self.state.lock().unwrap();
let mut settings = self.settings.lock().unwrap(); let mut settings = self.settings.lock().unwrap();
settings.caption_source = value.get().expect("type checked upstream"); settings.caption_source = value.get().expect("type checked upstream");
let s = self.state.lock().unwrap();
if let Some(state) = s.as_ref() { if let Some(state) = s.as_ref() {
if state.cccombiner.has_property("input-meta-processing") { if state.cccombiner.has_property("input-meta-processing") {
match settings.caption_source { match settings.caption_source {