init: fix bug 1584: improper check for fork error

diff --git a/init/init.c b/init/init.c
index 4b543a4..9891087 100644
--- a/init/init.c
+++ b/init/init.c
@@ -370,13 +370,12 @@
 
 		/* Now fork off another process to just hang around */
 		pid = fork();
-		if (pid) {
+		if (pid < 0) {
 			message(L_LOG | L_CONSOLE, "Can't fork");
 			_exit(1);
 		}
 
 		if (pid > 0) {
-
 			/* We are the parent -- wait till the child is done */
 			signal(SIGINT, SIG_IGN);
 			signal(SIGTSTP, SIG_IGN);