From f9a97efbe1a577d2b91f9aae7bca4bdd08a3656a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 4 Nov 2021 12:48:28 +0200 Subject: [PATCH] webrtcbin: Clear errors from finding codec preferences before the next iteration The media is just skipped and the error is not propagated to the caller, so keeping it around here would cause assertions a bit later when trying to set a new error over the old one. Part-of: --- subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c b/subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c index d25f95acc0..02ebc91c30 100644 --- a/subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c +++ b/subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c @@ -3966,10 +3966,16 @@ _create_answer_task (GstWebRTCBin * webrtc, const GstStructure * options, if (0) { rejected: - GST_INFO_OBJECT (webrtc, "media %u rejected", i); + if (error && *error) + GST_INFO_OBJECT (webrtc, "media %u rejected: %s", i, (*error)->message); + else + GST_INFO_OBJECT (webrtc, "media %u rejected", i); gst_sdp_media_free (media); gst_sdp_media_copy (offer_media, &media); gst_sdp_media_set_port_info (media, 0, 0); + /* Clear error here as it is not propagated to the caller and the media + * is just skipped, i.e. more iterations are going to happen. */ + g_clear_error (error); } gst_sdp_message_add_media (ret, media); gst_sdp_media_free (media);