diff options
| author | David Oberhollenzer <david.oberhollenzer@tele2.at> | 2018-09-21 18:08:48 +0200 | 
|---|---|---|
| committer | David Oberhollenzer <david.oberhollenzer@tele2.at> | 2018-09-21 18:08:48 +0200 | 
| commit | e171f8886525cbaa48e40f7d5b31acb6db657fb2 (patch) | |
| tree | c52ce2e16815bfa911d5bc3ae50690ac555484f1 /crond/runjob.c | |
| parent | a191a7cc1873f6c3a0617d549a2d4b4c331264cc (diff) | |
Remove pid fron cron serives, reap children in signal handler
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
Diffstat (limited to 'crond/runjob.c')
| -rw-r--r-- | crond/runjob.c | 5 | 
1 files changed, 2 insertions, 3 deletions
| diff --git a/crond/runjob.c b/crond/runjob.c index 7650748..83c4278 100644 --- a/crond/runjob.c +++ b/crond/runjob.c @@ -33,10 +33,8 @@ int runjob(crontab_t *tab)  		return -1;  	} -	if (pid != 0) { -		tab->pid = pid; +	if (pid != 0)  		return 0; -	}  	/* XXX: inside the child process */  	memset(&act, 0, sizeof(act)); @@ -44,6 +42,7 @@ int runjob(crontab_t *tab)  	sigaction(SIGINT, &act, NULL);  	sigaction(SIGTERM, &act, NULL);  	sigaction(SIGHUP, &act, NULL); +	sigaction(SIGCHLD, &act, NULL);  	if (setup_tty(tab->ctty, tab->tty_truncate))  		exit(EXIT_FAILURE); | 
