Closed eslam-ahmed-khair closed 2 years ago
I did some investigations.
This whole problem is related to the destruction of GstWebRTCPeer2
before being fully initialized (i.e. its pipelinePtr, teePtr, teeSrcPadPtr etc. and has not fully exchanged its ICE candidates). Before being fully initialized, those pointers might potentially be nullptr
and whenever the second UI click kicks in, this causes a delete on the SessionContextData
housing the uninitialized instance of GstWebRTCPeer2
.
This error (ReStreamer:60045): GStreamer-CRITICAL **: 11:51:45.306: gst_pad_add_probe: assertion 'GST_IS_PAD (pad)' failed
is because the teeSrcPadPtr
is null when attempting to add the probe on the idle pad.
Furthermore, callbacks on this object starts to trigger (such as srcPadAdded or AddIceCandidate), only to find out it it's been destroyed!
I've already found the reason. Fixing it right now.
@eslam-ahmed-khair should be fixed now, please try.
Nice quick fix, Thank you!
Hello,
when double clicking a stream on the UI or switching streams back and forth so quickly the following errors show up:
Perhaps we need something to protect against such requests fired in quick successions.
Thanks!