Index: initscripts/initscripts-5.00/src/initlog.c
diff -u initscripts-5.00/src/initlog.c:1.1.1.1 initscripts-5.00/src/initlog.c:1.1.1.1.2.1
--- initscripts-5.00/src/initlog.c:1.1.1.1	Thu Jul 20 14:58:22 2000
+++ initscripts-5.00/src/initlog.c	Thu Jul 20 15:08:49 2000
@@ -233,8 +233,9 @@
     
     if (cmd) {
 	logentry.cmd = strdup(basename(cmd));
-	if ((logentry.cmd[0] =='K' || logentry.cmd[0] == 'S') && ( 30 <= logentry.cmd[1] <= 39 )
-	    && ( 30 <= logentry.cmd[2] <= 39 ) )
+	if ((logentry.cmd[0] =='K' || logentry.cmd[0] == 'S')
+	    && 30 <= logentry.cmd[1] && logentry.cmd[1] <= 39
+	    && 30 <= logentry.cmd[2] && logentry.cmd[2] <= 39)
 	  logentry.cmd+=3;
     } else
       logentry.cmd = strdup(_("(none)"));
@@ -259,8 +260,9 @@
     
     if (cmd) {
 	logentry.cmd = strdup(basename(cmd));
-	if ((logentry.cmd[0] =='K' || logentry.cmd[0] == 'S') && ( 30 <= logentry.cmd[1] <= 39 )
-	    && ( 30 <= logentry.cmd[2] <= 39 ) )
+	if ((logentry.cmd[0] =='K' || logentry.cmd[0] == 'S')
+	    && 30 <= logentry.cmd[1] && logentry.cmd[1] <= 39
+	    && 30 <= logentry.cmd[2] && logentry.cmd[2] <= 39)
 	  logentry.cmd+=3;
     } else
       logentry.cmd = strdup(_(""));
@@ -313,7 +315,7 @@
         { "quiet", 'q', POPT_ARG_NONE, &quiet, 0,
 	  "suppress stdout/stderr", NULL
 	},
-        { 0, 0, 0, 0, 0, 0 }
+        { 0, 0, 0, 0, 0, 0, 0 }
     };
     
     context = poptGetContext("initlog", argc, argv, optTable, 0);
Index: initscripts/initscripts-5.00/src/process.c
diff -u initscripts-5.00/src/process.c:1.1.1.1 initscripts-5.00/src/process.c:1.1.1.1.2.1
--- initscripts-5.00/src/process.c:1.1.1.1	Thu Jul 20 14:58:22 2000
+++ initscripts-5.00/src/process.c	Thu Jul 20 15:08:49 2000
@@ -22,7 +22,7 @@
 int forkCommand(char **args, int *outfd, int *errfd, int *cmdfd, int quiet) {
    /* Fork command 'cmd', returning pid, and optionally pointer
     * to open file descriptor fd */
-    int fdout, fderr, fdcmd, pid;
+    int fdout = -1, fderr = -1, fdcmd, pid;
     int outpipe[2], errpipe[2], fdpipe[2];
     int ourpid;
     
@@ -62,8 +62,10 @@
      * fucks up and we segfault or something, we don't kill rc.sysinit. */
     if ( (cmdfd&&!pid) || (pid &&!cmdfd)) {
 	/* parent */
-	close(fdout);
-	close(fderr);
+	if (fdout != -1)
+	    close(fdout);
+	if (fderr != -1)
+	    close(fderr);
 	close(fdcmd);
 	if (!pid)
 	  return ourpid;
@@ -98,8 +100,10 @@
 	    perror("dup2");
 	    exit(-1);
 	}
-	close(fdout);
-	close(fderr);
+	if (fdout != -1)
+	    close(fdout);
+	if (fderr != -1)
+	    close(fderr);
 	close(fdcmd);
 	if (outfd)
 	  close(*outfd);
