X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/ff6b733cd0448c05f4be5aad32895cc8c748ee79..425e45123773a506c5ff9b75d5fae4591b34a383:/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 5853e4b8..f500d818 100644 --- a/src/main/java/org/asamk/signal/App.java +++ b/src/main/java/org/asamk/signal/App.java @@ -34,6 +34,7 @@ import org.asamk.signal.output.OutputWriter; import org.asamk.signal.output.PlainTextWriterImpl; import org.asamk.signal.util.IOUtils; import org.freedesktop.dbus.connections.impl.DBusConnection; +import org.freedesktop.dbus.connections.impl.DBusConnectionBuilder; import org.freedesktop.dbus.errors.ServiceUnknown; import org.freedesktop.dbus.errors.UnknownMethod; import org.freedesktop.dbus.exceptions.DBusException; @@ -163,10 +164,15 @@ public class App { ? TrustNewIdentity.ON_FIRST_USE : trustNewIdentityCli == TrustNewIdentityCli.ALWAYS ? TrustNewIdentity.ALWAYS : TrustNewIdentity.NEVER; - final SignalAccountFiles signalAccountFiles = new SignalAccountFiles(configPath, - serviceEnvironment, - BaseConfig.USER_AGENT, - trustNewIdentity); + final SignalAccountFiles signalAccountFiles; + try { + signalAccountFiles = new SignalAccountFiles(configPath, + serviceEnvironment, + BaseConfig.USER_AGENT, + trustNewIdentity); + } catch (IOException e) { + throw new IOErrorException("Failed to read local accounts list", e); + } if (command instanceof ProvisioningCommand provisioningCommand) { if (account != null) { @@ -360,7 +366,7 @@ public class App { } else { busType = DBusConnection.DBusBusType.SESSION; } - try (var dBusConn = DBusConnection.getConnection(busType)) { + try (var dBusConn = DBusConnectionBuilder.forType(busType).build()) { if (command instanceof ProvisioningCommand c) { if (account != null) { throw new UserErrorException("You cannot specify a account (phone number) when linking");