aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2026-01-01 11:49:37 +0000
committerLaurent Bercot <ska-skaware@skarnet.org>2026-01-01 11:49:37 +0000
commite697eeb3c5f098f9599d64b81cd4e69ab28658e8 (patch)
tree5f8cb321f70e92803e78667b93bab805d63f1ec6 /src
parent0a66d551183f1e6acf46ae6a813719d30ba89128 (diff)
downloadtipidee-e697eeb3c5f098f9599d64b81cd4e69ab28658e8.tar.gz
Signal handlers must save/restore errno
Diffstat (limited to 'src')
-rw-r--r--src/config/tipidee-config.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/config/tipidee-config.c b/src/config/tipidee-config.c
index 3a8d999..154575b 100644
--- a/src/config/tipidee-config.c
+++ b/src/config/tipidee-config.c
@@ -28,7 +28,7 @@ static pid_t pid = 0 ;
static void sigchld_handler (int sig)
{
- (void)sig ;
+ int e = errno ;
for (;;)
{
int wstat ;
@@ -41,6 +41,8 @@ static void sigchld_handler (int sig)
else _exit(wait_estatus(wstat)) ;
}
}
+ (void)sig ;
+ errno = e ;
}
static inline void conf_output (char const *ofile, unsigned int omode)