diff --git a/libsignal-service/src/main/java/org/whispersystems/signalservice/internal/ServiceResponseProcessor.java b/libsignal-service/src/main/java/org/whispersystems/signalservice/internal/ServiceResponseProcessor.java index 0b3e00b527..8ff9dd6d47 100644 --- a/libsignal-service/src/main/java/org/whispersystems/signalservice/internal/ServiceResponseProcessor.java +++ b/libsignal-service/src/main/java/org/whispersystems/signalservice/internal/ServiceResponseProcessor.java @@ -1,6 +1,7 @@ package org.whispersystems.signalservice.internal; +import org.signal.libsignal.net.ChatServiceException; import org.whispersystems.signalservice.api.push.exceptions.NonSuccessfulResponseCodeException; import org.whispersystems.signalservice.api.util.OptionalUtil; import org.whispersystems.signalservice.api.util.Preconditions; @@ -48,7 +49,7 @@ public abstract class ServiceResponseProcessor { throw (IOException) error; } else if (error instanceof RuntimeException) { throw (RuntimeException) error; - } else if (error instanceof InterruptedException || error instanceof TimeoutException) { + } else if (error instanceof InterruptedException || error instanceof TimeoutException || error instanceof ChatServiceException) { throw new IOException(error); } else { throw new IllegalStateException("Unexpected error type for response processor", error);