diff options
-rw-r--r-- | libdaemon/dsignal.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/libdaemon/dsignal.c b/libdaemon/dsignal.c index e9ab2d9..2593d42 100644 --- a/libdaemon/dsignal.c +++ b/libdaemon/dsignal.c @@ -95,19 +95,17 @@ int daemon_signal_install(int s){ int daemon_signal_init(int s, ...) { int sig, r = 0; - va_list ap; - va_start(ap, s); if (_init() < 0) return -1; + va_start(ap, s); + sig = s; while (sig > 0) { - if (daemon_signal_install(sig) < 0) { - r = -1; + if ((r = daemon_signal_install(sig)) < 0) break; - } sig = va_arg(ap, int); } |