]> nmode's Git Repositories - signal-cli/commitdiff
Fix registering v0.3.1
authorAsamK <asamk@gmx.de>
Sun, 3 Apr 2016 12:28:24 +0000 (14:28 +0200)
committerAsamK <asamk@gmx.de>
Sun, 3 Apr 2016 12:28:24 +0000 (14:28 +0200)
Only query prekeys count if registration is complete

src/main/java/org/asamk/signal/Manager.java

index 113fb0cc58838c8aca4ccfd2d9c06e40aa314e38..d1963cb5ebb2a3d5c5c9ffbb19afab0b3e2f28aa 100644 (file)
@@ -41,6 +41,7 @@ import org.whispersystems.signalservice.api.crypto.SignalServiceCipher;
 import org.whispersystems.signalservice.api.messages.*;
 import org.whispersystems.signalservice.api.push.SignalServiceAddress;
 import org.whispersystems.signalservice.api.push.TrustStore;
+import org.whispersystems.signalservice.api.push.exceptions.AuthorizationFailedException;
 import org.whispersystems.signalservice.api.push.exceptions.EncapsulatedExceptions;
 import org.whispersystems.signalservice.api.util.InvalidNumberException;
 import org.whispersystems.signalservice.api.util.PhoneNumberFormatter;
@@ -143,9 +144,13 @@ class Manager implements Signal {
             groupStore = new JsonGroupStore();
         }
         accountManager = new SignalServiceAccountManager(URL, TRUST_STORE, username, password, USER_AGENT);
-        if (accountManager.getPreKeysCount() < PREKEY_MINIMUM_COUNT) {
-            refreshPreKeys();
-            save();
+        try {
+            if (registered && accountManager.getPreKeysCount() < PREKEY_MINIMUM_COUNT) {
+                refreshPreKeys();
+                save();
+            }
+        } catch (AuthorizationFailedException e) {
+            System.err.println("Authorization failed, was the number registered elsewhere?");
         }
     }