webrtcbin: disconnect signal ICE handlers on dispose
It is entirely possible that the in progress may still provide some state updates until the ICE object is destroyed, these state updates should not really be done when webrtcbin is in the process of destroying itself and access freed data. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9216>
This commit is contained in:
parent
e82b80a74a
commit
d59cc622f2
@ -8800,8 +8800,11 @@ gst_webrtc_bin_dispose (GObject * object)
|
||||
{
|
||||
GstWebRTCBin *webrtc = GST_WEBRTC_BIN (object);
|
||||
|
||||
if (webrtc->priv->ice)
|
||||
if (webrtc->priv->ice) {
|
||||
gst_webrtc_ice_set_on_ice_candidate (webrtc->priv->ice, NULL, NULL, NULL);
|
||||
g_signal_handlers_disconnect_by_data (webrtc->priv->ice, webrtc);
|
||||
gst_object_unref (webrtc->priv->ice);
|
||||
}
|
||||
webrtc->priv->ice = NULL;
|
||||
|
||||
if (webrtc->priv->ice_stream_map)
|
||||
|
Loading…
x
Reference in New Issue
Block a user