Commit 2798a80e authored by Sebastian Dröge's avatar Sebastian Dröge 🍵 Committed by GStreamer Merge Bot

webrtcbin: Add handling of unspecified peer-connection-state situation

For us it can happen that the DTLS transports are still in the process
of connecting while the ICE transport is already completed. This
situation is not specified in the spec but conceptually that means it is
still in the process of connecting.

Fixes gstreamer/gst-plugins-bad#758
parent 4b733223
......@@ -1115,6 +1115,15 @@ _collate_peer_connection_states (GstWebRTCBin * webrtc)
return STATE (CONNECTED);
}
/* FIXME: Unspecified state that happens for us */
if ((dtls_all_new_connecting_or_checking
|| dtls_all_connected_completed_or_closed)
&& (ice_all_new_connecting_or_checking
|| ice_all_connected_completed_or_closed)) {
GST_TRACE_OBJECT (webrtc, "returning connecting");
return STATE (CONNECTING);
}
GST_FIXME_OBJECT (webrtc,
"Undefined situation detected, returning old state");
return webrtc->peer_connection_state;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment