summaryrefslogtreecommitdiffstats
path: root/libdaemon/dsignal.c
diff options
context:
space:
mode:
Diffstat (limited to 'libdaemon/dsignal.c')
-rw-r--r--libdaemon/dsignal.c4
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) {