mirror of
https://github.com/signalapp/Signal-Server
synced 2026-04-19 21:58:08 +01:00
Throw a MismatchedDevicesException for empty message lists to support iOS clients
This commit is contained in:
@@ -13,6 +13,7 @@ import io.micrometer.core.instrument.DistributionSummary;
|
||||
import io.micrometer.core.instrument.Metrics;
|
||||
import io.micrometer.core.instrument.Tag;
|
||||
import io.micrometer.core.instrument.Tags;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
@@ -99,7 +100,11 @@ public class MessageSender {
|
||||
@Nullable final String userAgent) throws MismatchedDevicesException, MessageTooLargeException {
|
||||
|
||||
if (messagesByDeviceId.isEmpty()) {
|
||||
return;
|
||||
// TODO Simply return and don't throw an exception when iOS clients no longer depend on this behavior
|
||||
throw new MismatchedDevicesException(new MismatchedDevices(
|
||||
destination.getDevices().stream().map(Device::getId).collect(Collectors.toSet()),
|
||||
Collections.emptySet(),
|
||||
Collections.emptySet()));
|
||||
}
|
||||
|
||||
if (!destination.isIdentifiedBy(destinationIdentifier)) {
|
||||
|
||||
Reference in New Issue
Block a user