From f40ba0bf68efcb4a63d9bf841be36f0a9dda80c6 Mon Sep 17 00:00:00 2001 From: Cody Henthorne Date: Wed, 29 Sep 2021 16:43:51 -0400 Subject: [PATCH] Prevent starting 1:1 call with a group recipient. --- .../securesms/service/webrtc/IdleActionProcessor.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IdleActionProcessor.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IdleActionProcessor.java index 86a018cc5f..44bb0ebafd 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IdleActionProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IdleActionProcessor.java @@ -8,6 +8,7 @@ import org.signal.ringrtc.CallManager; import org.thoughtcrime.securesms.database.DatabaseFactory; import org.thoughtcrime.securesms.events.WebRtcViewModel; import org.thoughtcrime.securesms.groups.GroupId; +import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.ringrtc.RemotePeer; import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceState; import org.whispersystems.signalservice.api.messages.calls.OfferMessage; @@ -44,6 +45,12 @@ public class IdleActionProcessor extends WebRtcActionProcessor { { Log.i(TAG, "handleOutgoingCall():"); + Recipient recipient = Recipient.resolved(remotePeer.getId()); + if (recipient.isGroup()) { + Log.w(TAG, "Aborting attempt to start 1:1 call for group recipient: " + remotePeer.getId()); + return currentState; + } + currentState = WebRtcVideoUtil.initializeVideo(context, webRtcInteractor.getCameraEventListener(), currentState); return beginCallDelegate.handleOutgoingCall(currentState, remotePeer, offerType); }