diff --git a/Signal/src/call/CallService.swift b/Signal/src/call/CallService.swift index bbfce1855b..0324e1c0b0 100644 --- a/Signal/src/call/CallService.swift +++ b/Signal/src/call/CallService.swift @@ -487,10 +487,8 @@ extension SignalCall: CallManagerCallReference { } AssertIsOnMainThread() Logger.info("callId: \(callId), thread: \(thread.contactAddress)") - var iceCandidates: [CallManagerIceCandidate] = [] - - for candidate in candidates { - iceCandidates.append(CallManagerIceCandidate(sdp: candidate.sdp, sdpMLineIndex: Int32(candidate.sdpMlineIndex), sdpMid: candidate.sdpMid)) + let iceCandidates = candidates.filter {$0.id == callId}.map { candidate in + CallManagerIceCandidate(sdp: candidate.sdp, sdpMLineIndex: Int32(candidate.sdpMlineIndex), sdpMid: candidate.sdpMid) } // TODO MULTIRING - pass through source device id from envelope to support calls from non-primary device