webrtcsink: call webrtcbin:add-ice-candidate without session lock

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2215>
This commit is contained in:
Mathieu Duponchelle 2025-04-24 20:40:37 +02:00
parent 5b01fdff8c
commit 7cf2736a15

View file

@ -3734,15 +3734,13 @@ impl BaseWebRTCSink {
};
if let Some(session) = state.sessions.get(session_id) {
let session = session.0.lock().unwrap();
let webrtcbin = session.0.lock().unwrap().webrtcbin.clone();
gst::trace!(
CAT,
imp = self,
"adding ice candidate for session {session_id}"
);
session
.webrtcbin
.emit_by_name::<()>("add-ice-candidate", &[&sdp_m_line_index, &candidate]);
webrtcbin.emit_by_name::<()>("add-ice-candidate", &[&sdp_m_line_index, &candidate]);
} else {
gst::warning!(CAT, imp = self, "No consumer with ID {session_id}");
}