diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2026-01-01 11:49:37 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska-skaware@skarnet.org> | 2026-01-01 11:49:37 +0000 |
| commit | e697eeb3c5f098f9599d64b81cd4e69ab28658e8 (patch) | |
| tree | 5f8cb321f70e92803e78667b93bab805d63f1ec6 /src | |
| parent | 0a66d551183f1e6acf46ae6a813719d30ba89128 (diff) | |
| download | tipidee-e697eeb3c5f098f9599d64b81cd4e69ab28658e8.tar.gz | |
Signal handlers must save/restore errno
Diffstat (limited to 'src')
| -rw-r--r-- | src/config/tipidee-config.c | 4 |
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) |
