init: fix bug 1584: improper check for fork error

This commit is contained in:
Denis Vlasenko 2007-11-10 01:57:35 +00:00
parent 5cc6459c46
commit f6ccc62c70

View File

@ -370,13 +370,12 @@ static pid_t run(const struct init_action *a)
/* Now fork off another process to just hang around */ /* Now fork off another process to just hang around */
pid = fork(); pid = fork();
if (pid) { if (pid < 0) {
message(L_LOG | L_CONSOLE, "Can't fork"); message(L_LOG | L_CONSOLE, "Can't fork");
_exit(1); _exit(1);
} }
if (pid > 0) { if (pid > 0) {
/* We are the parent -- wait till the child is done */ /* We are the parent -- wait till the child is done */
signal(SIGINT, SIG_IGN); signal(SIGINT, SIG_IGN);
signal(SIGTSTP, SIG_IGN); signal(SIGTSTP, SIG_IGN);