From fc14de31ff564a56e89063da99433f7ecd06b665 Mon Sep 17 00:00:00 2001 From: Ian Gulliver Date: Wed, 9 Mar 2016 12:55:21 -0800 Subject: [PATCH] Only grab SIGHUP if we can do something with it. --- adsbus/log.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/adsbus/log.c b/adsbus/log.c index 279cf7b..5ed9ac7 100644 --- a/adsbus/log.c +++ b/adsbus/log.c @@ -90,15 +90,19 @@ void log_init() { } void log_init_peer() { - sigset_t sigmask; - assert(!sigemptyset(&sigmask)); - assert(!sigaddset(&sigmask, SIGHUP)); - log_rotate_peer.fd = signalfd(-1, &sigmask, SFD_NONBLOCK | SFD_CLOEXEC); - assert(log_rotate_peer.fd >= 0); - log_rotate_peer.event_handler = log_rotate_handler; - peer_epoll_add(&log_rotate_peer, EPOLLIN); + if (log_path) { + sigset_t sigmask; + assert(!sigemptyset(&sigmask)); + assert(!sigaddset(&sigmask, SIGHUP)); + log_rotate_peer.fd = signalfd(-1, &sigmask, SFD_NONBLOCK | SFD_CLOEXEC); + assert(log_rotate_peer.fd >= 0); + log_rotate_peer.event_handler = log_rotate_handler; + peer_epoll_add(&log_rotate_peer, EPOLLIN); - assert(!sigprocmask(SIG_BLOCK, &sigmask, NULL)); + assert(!sigprocmask(SIG_BLOCK, &sigmask, NULL)); + } else { + log_rotate_peer.fd = -1; + } } void log_cleanup_peer() {