From 02b283be78cb37819dbbb89d272dcbe02e4a0ab2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=A0imon=20Brandner?= Date: Sat, 27 Mar 2021 09:13:00 +0100 Subject: [PATCH] Properly terminate screenshare calls if NoUserMedia MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Šimon Brandner --- src/webrtc/call.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/webrtc/call.ts b/src/webrtc/call.ts index a5636d1ca..bb7fdad3d 100644 --- a/src/webrtc/call.ts +++ b/src/webrtc/call.ts @@ -381,7 +381,11 @@ export class MatrixCall extends EventEmitter { try { const screenshareConstraints = await getScreenshareContraints(selectDesktopCapturerSource); - if (!screenshareConstraints) return; + if (!screenshareConstraints) { + this.terminate(CallParty.Local, CallErrorCode.NoUserMedia, false); + return; + } + if (window.electron?.getDesktopCapturerSources) { // We are using Electron logger.debug("Getting screen stream using getUserMedia()..."); @@ -402,6 +406,7 @@ export class MatrixCall extends EventEmitter { "Failed to get screen-sharing stream: ", err, ), ); + this.terminate(CallParty.Local, CallErrorCode.NoUserMedia, false); } this.type = CallType.Video; }