summaryrefslogtreecommitdiffhomepage
path: root/mullvad-setup
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2021-03-17 18:27:09 +0100
committerDavid Lönnhager <david.l@mullvad.net>2021-03-18 15:40:09 +0100
commitbf6430666e8d292ccf64d9f550b462c1c27608d7 (patch)
tree9c10583206e77a8942df09e2cbceb469dfeade4b /mullvad-setup
parentdc76f29507b2491385f1dc58ecff1fe96ed019aa (diff)
downloadmullvadvpn-bf6430666e8d292ccf64d9f550b462c1c27608d7.tar.xz
mullvadvpn-bf6430666e8d292ccf64d9f550b462c1c27608d7.zip
Abort uninstaller if prepare-restart fails
Diffstat (limited to 'mullvad-setup')
-rw-r--r--mullvad-setup/src/main.rs12
1 files changed, 11 insertions, 1 deletions
diff --git a/mullvad-setup/src/main.rs b/mullvad-setup/src/main.rs
index 0e9c104db1..45186dd1a7 100644
--- a/mullvad-setup/src/main.rs
+++ b/mullvad-setup/src/main.rs
@@ -19,6 +19,16 @@ enum ExitStatus {
Ok = 0,
Error = 1,
VersionNotOlder = 2,
+ DaemonNotRunning = 3,
+}
+
+impl From<Error> for ExitStatus {
+ fn from(error: Error) -> ExitStatus {
+ match error {
+ Error::RpcConnectionError(_) => ExitStatus::DaemonNotRunning,
+ _ => ExitStatus::Error,
+ }
+ }
}
#[cfg(windows)]
@@ -112,7 +122,7 @@ async fn main() {
if let Err(e) = result {
eprintln!("{}", e.display_chain());
- process::exit(ExitStatus::Error as i32);
+ process::exit(ExitStatus::from(e) as i32);
}
}