diff options
Diffstat (limited to 'libdaemon/dsignal.c')
-rw-r--r-- | libdaemon/dsignal.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libdaemon/dsignal.c b/libdaemon/dsignal.c index 2593d42..f538395 100644 --- a/libdaemon/dsignal.c +++ b/libdaemon/dsignal.c @@ -116,6 +116,8 @@ int daemon_signal_init(int s, ...) { } void daemon_signal_done(void) { + int saved_errno = errno; + if (_signal_pipe[0] != -1) close(_signal_pipe[0]); @@ -123,6 +125,8 @@ void daemon_signal_done(void) { close(_signal_pipe[1]); _signal_pipe[0] = _signal_pipe[1] = -1; + + errno = saved_errno; } int daemon_signal_next(void) { |