From 05e77b1d337525d0ac6245966bdad955d4ff9012 Mon Sep 17 00:00:00 2001 From: Alex Hart Date: Tue, 20 Jan 2026 13:37:57 -0400 Subject: [PATCH] Filter out participants without ServiceId when leaving group call. Co-authored-by: Greyson Parrelli --- .../service/webrtc/GroupConnectedActionProcessor.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupConnectedActionProcessor.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupConnectedActionProcessor.java index a9eb1f7ff8..1fac274cc6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupConnectedActionProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/GroupConnectedActionProcessor.java @@ -253,7 +253,10 @@ public class GroupConnectedActionProcessor extends GroupActionProcessor { String eraId = WebRtcUtil.getGroupCallEraId(groupCall); webRtcInteractor.sendGroupCallMessage(currentState.getCallInfoState().getCallRecipient(), eraId, null, false, false); - List members = Stream.of(currentState.getCallInfoState().getRemoteCallParticipants()).map(p -> p.getRecipient().requireServiceId().getRawUuid()).toList(); + List members = Stream.of(currentState.getCallInfoState().getRemoteCallParticipants()) + .filter(p -> p.getRecipient().getHasServiceId()) + .map(p -> p.getRecipient().requireServiceId().getRawUuid()) + .toList(); webRtcInteractor.updateGroupCallUpdateMessage(currentState.getCallInfoState().getCallRecipient().getId(), eraId, members, false); currentState = currentState.builder()