From e82e5fe5aeac051b2afa33f9141ff65cbaf77e68 Mon Sep 17 00:00:00 2001 From: Robert Ayrapetyan Date: Mon, 13 Jan 2025 12:45:56 -0800 Subject: [PATCH] webrtc: fix Safari addIceCandidate crash Part-of: --- net/webrtc/gstwebrtc-api/package.json | 4 +--- .../patches/webrtc-adapter+8.2.3.patch | 13 ------------- net/webrtc/gstwebrtc-api/src/consumer-session.js | 2 +- 3 files changed, 2 insertions(+), 17 deletions(-) delete mode 100644 net/webrtc/gstwebrtc-api/patches/webrtc-adapter+8.2.3.patch diff --git a/net/webrtc/gstwebrtc-api/package.json b/net/webrtc/gstwebrtc-api/package.json index 8c442671f..44cd0dce4 100644 --- a/net/webrtc/gstwebrtc-api/package.json +++ b/net/webrtc/gstwebrtc-api/package.json @@ -58,7 +58,6 @@ "webpack-dev-server": "4.15.1" }, "dependencies": { - "patch-package": "8.0.0", "webrtc-adapter": "8.2.3" }, "scripts": { @@ -69,7 +68,6 @@ "make": "npm run check && npm run build && npm run docs", "test": "mocha --node-env=test --exit", "prepack": "npm run test && npm run make", - "start": "webpack serve", - "postinstall": "patch-package" + "start": "webpack serve" } } diff --git a/net/webrtc/gstwebrtc-api/patches/webrtc-adapter+8.2.3.patch b/net/webrtc/gstwebrtc-api/patches/webrtc-adapter+8.2.3.patch deleted file mode 100644 index ee49be3de..000000000 --- a/net/webrtc/gstwebrtc-api/patches/webrtc-adapter+8.2.3.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/node_modules/webrtc-adapter/src/js/common_shim.js b/node_modules/webrtc-adapter/src/js/common_shim.js -index 96d7c8e..063ea64 100644 ---- a/node_modules/webrtc-adapter/src/js/common_shim.js -+++ b/node_modules/webrtc-adapter/src/js/common_shim.js -@@ -388,7 +388,7 @@ export function shimAddIceCandidateNullOrEmpty(window, browserDetails) { - } - const nativeAddIceCandidate = - window.RTCPeerConnection.prototype.addIceCandidate; -- if (!nativeAddIceCandidate || nativeAddIceCandidate.length === 0) { -+ if (!nativeAddIceCandidate) { - return; - } - window.RTCPeerConnection.prototype.addIceCandidate = diff --git a/net/webrtc/gstwebrtc-api/src/consumer-session.js b/net/webrtc/gstwebrtc-api/src/consumer-session.js index 660f7f39f..382f75be2 100644 --- a/net/webrtc/gstwebrtc-api/src/consumer-session.js +++ b/net/webrtc/gstwebrtc-api/src/consumer-session.js @@ -341,7 +341,7 @@ class ConsumerSession extends WebRTCSession { }); } } else if (msg.ice) { - const candidate = new RTCIceCandidate(msg.ice); + const candidate = msg.ice.candidate ? new RTCIceCandidate(msg.ice) : null; this._rtcPeerConnection.addIceCandidate(candidate).catch((ex) => { if (this._state !== SessionState.closed) { this.dispatchEvent(new ErrorEvent("error", {