diff options
Diffstat (limited to 'email.c')
-rw-r--r-- | email.c | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -5,6 +5,8 @@ #include <syslog.h> #include <fcntl.h> #include <unistd.h> +#include <sys/wait.h> + #include "email.h" @@ -12,6 +14,9 @@ static int daemonish (int nochdir, int noclose) { + pid_t pid; + int status; + if (!nochdir && chdir ("/")) return -1; @@ -28,7 +33,7 @@ static int daemonish (int nochdir, int noclose) if (failed) return -1; } - switch (fork()) { + switch ((pid = fork())) { case 0: break; @@ -36,6 +41,7 @@ static int daemonish (int nochdir, int noclose) return -1; default: + waitpid (pid, &status, 0); return 1;; } |