X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/86711b0e5c37c7d202151c7d05b00e5bdeb7836b..ea11f3b1fd2c1e2ab6ef0eff87416f00f6996e29:/src/main/java/org/asamk/signal/App.java diff --git a/src/main/java/org/asamk/signal/App.java b/src/main/java/org/asamk/signal/App.java index 75ac5280..5c19a403 100644 --- a/src/main/java/org/asamk/signal/App.java +++ b/src/main/java/org/asamk/signal/App.java @@ -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(); 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); @@ -238,6 +241,7 @@ public class App { } catch (NotRegisteredException e) { throw new UserErrorException("User " + username + " is not registered."); } catch (Throwable e) { + logger.debug("Loading state file failed", e); throw new UnexpectedErrorException("Error loading state file for user " + username + ": " @@ -306,11 +310,13 @@ public class App { var legacySettingsPath = new File(configPath, "signal"); if (legacySettingsPath.exists()) { + logger.warn("Using legacy data path \"{}\", please move it to \"{}\".", legacySettingsPath, dataPath); return legacySettingsPath; } legacySettingsPath = new File(configPath, "textsecure"); if (legacySettingsPath.exists()) { + logger.warn("Using legacy data path \"{}\", please move it to \"{}\".", legacySettingsPath, dataPath); return legacySettingsPath; }