]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/App.java
Refactor group store
[signal-cli] / src / main / java / org / asamk / signal / App.java
index 75ac5280e05f873a36307796e525e7b92f2e1fa9..873e96bd3ae20653f1c5685a9584822fdf6ccef8 100644 (file)
@@ -133,16 +133,15 @@ public class App {
 
         if (username == null) {
             var usernames = Manager.getAllLocalUsernames(dataPath);
-            if (usernames.size() == 0) {
-                throw new UserErrorException("No local users found, you first need to register or link an account");
-            }
 
             if (command instanceof MultiLocalCommand) {
                 handleMultiLocalCommand((MultiLocalCommand) command, dataPath, serviceEnvironment, usernames);
                 return;
             }
 
-            if (usernames.size() > 1) {
+            if (usernames.size() == 0) {
+                throw new UserErrorException("No local users found, you first need to register or link an account");
+            } else if (usernames.size() > 1) {
                 throw new UserErrorException(
                         "Multiple users found, you need to specify a username (phone number) with -u");
             }
@@ -215,7 +214,11 @@ public class App {
     ) throws CommandException {
         final var managers = new ArrayList<Manager>();
         for (String u : usernames) {
-            managers.add(loadManager(u, dataPath, serviceEnvironment));
+            try {
+                managers.add(loadManager(u, dataPath, serviceEnvironment));
+            } catch (CommandException e) {
+                logger.warn("Ignoring {}: {}", u, e.getMessage());
+            }
         }
 
         command.handleCommand(ns, managers);