diff options
| author | Linus Färnstrand <linus@mullvad.net> | 2019-04-10 15:55:48 +0200 |
|---|---|---|
| committer | Linus Färnstrand <linus@mullvad.net> | 2019-04-11 12:37:11 +0200 |
| commit | 24cb221af83295b7cf3de4b610ed1b6322f0400b (patch) | |
| tree | fe1cd6f74665a26b0473ff49ac6244ff3efbcb98 | |
| parent | b3e509b94b574a42910bb4df5c834c77d43e2a57 (diff) | |
| download | mullvadvpn-24cb221af83295b7cf3de4b610ed1b6322f0400b.tar.xz mullvadvpn-24cb221af83295b7cf3de4b610ed1b6322f0400b.zip | |
Get rid of error-chain in shutdown module
| -rw-r--r-- | mullvad-daemon/src/shutdown.rs | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/mullvad-daemon/src/shutdown.rs b/mullvad-daemon/src/shutdown.rs index 05c1e7f1af..8a179cd6c5 100644 --- a/mullvad-daemon/src/shutdown.rs +++ b/mullvad-daemon/src/shutdown.rs @@ -1,14 +1,9 @@ -error_chain! {} - #[cfg(unix)] mod platform { - use super::Result; use simple_signal::Signal; + use std::io; - pub fn set_shutdown_signal_handler<F>(f: F) -> Result<()> - where - F: Fn() + 'static + Send, - { + pub fn set_shutdown_signal_handler(f: impl Fn() + 'static + Send) -> Result<(), io::Error> { simple_signal::set_handler(&[Signal::Term, Signal::Int], move |s| { log::debug!("Process received signal: {:?}", s); f(); @@ -19,17 +14,16 @@ mod platform { #[cfg(windows)] mod platform { - use super::{Result, ResultExt}; + #[derive(err_derive::Error, Debug)] + #[error(display = "Unable to attach ctrl-c handler")] + pub struct Error(#[error(cause)] ctrlc::Error); - pub fn set_shutdown_signal_handler<F>(f: F) -> Result<()> - where - F: Fn() + 'static + Send, - { + pub fn set_shutdown_signal_handler(f: impl Fn() + 'static + Send) -> Result<(), Error> { ctrlc::set_handler(move || { log::debug!("Process received Ctrl-c"); f(); }) - .chain_err(|| "Unable to attach ctrl-c handler") + .map_err(Error) } } |
