From 042224d33c073a97b860cc8bb7cc353c1a8a2a36 Mon Sep 17 00:00:00 2001 From: Michal 'vorner' Vaner Date: Mon, 29 Apr 2019 04:12:40 +0200 Subject: [PATCH] signal: Smaller dependency (#1069) The signal-hook library got split into lower-level and higher-level parts. The tokio-signal uses only API from the lower-level one, so it can depend on it directly. The only effect of this change is smaller amount of compiled (and unused) code during compilation. There's no change in the code actually used. --- tokio-signal/Cargo.toml | 2 +- tokio-signal/src/unix.rs | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/tokio-signal/Cargo.toml b/tokio-signal/Cargo.toml index b47dd2a0e..0b2b9e191 100644 --- a/tokio-signal/Cargo.toml +++ b/tokio-signal/Cargo.toml @@ -33,7 +33,7 @@ tokio-io = "0.1" [target.'cfg(unix)'.dependencies] libc = "0.2" mio-uds = "0.6" -signal-hook = "0.1" +signal-hook-registry = "~1" [dev-dependencies] tokio = "0.1.8" diff --git a/tokio-signal/src/unix.rs b/tokio-signal/src/unix.rs index c16131acc..27502fc07 100644 --- a/tokio-signal/src/unix.rs +++ b/tokio-signal/src/unix.rs @@ -8,7 +8,7 @@ pub extern crate libc; extern crate mio; extern crate mio_uds; -extern crate signal_hook; +extern crate signal_hook_registry; use std::io::prelude::*; use std::io::{self, Error, ErrorKind}; @@ -153,7 +153,7 @@ fn action(slot: &SignalInfo, mut sender: &UnixStream) { /// This will register the signal handler if it hasn't already been registered, /// returning any error along the way if that fails. fn signal_enable(signal: c_int) -> io::Result<()> { - if signal_hook::FORBIDDEN.contains(&signal) { + if signal_hook_registry::FORBIDDEN.contains(&signal) { return Err(Error::new( ErrorKind::Other, format!("Refusing to register signal {}", signal), @@ -168,7 +168,8 @@ fn signal_enable(signal: c_int) -> io::Result<()> { let mut registered = Ok(()); siginfo.init.call_once(|| { registered = unsafe { - signal_hook::register(signal, move || action(siginfo, &globals.sender)).map(|_| ()) + signal_hook_registry::register(signal, move || action(siginfo, &globals.sender)) + .map(|_| ()) }; if registered.is_ok() { siginfo.initialized.store(true, Ordering::Relaxed);