diff --git a/src/vipw.c b/src/vipw.c index 94185c3d..1a69ef28 100644 --- a/src/vipw.c +++ b/src/vipw.c @@ -349,6 +349,9 @@ vipwedit (const char *file, int (*file_lock) (void), int (*file_unlock) (void)) sigprocmask(SIG_BLOCK, &mask, &omask); } + /* set SIGCHLD to default for waitpid */ + signal(SIGCHLD, SIG_DFL); + for (;;) { pid = waitpid (pid, &status, WUNTRACED); if ((pid != -1) && (WIFSTOPPED (status) != 0)) {