=== modified file 'init/main.c'
--- init/main.c	2011-03-16 22:54:56 +0000
+++ init/main.c	2011-08-08 21:09:43 +0000
@@ -173,8 +173,23 @@
 	 * resetting it to sane defaults unless we're inheriting from another
 	 * init process which we know left it in a sane state.
 	 */
-	if (system_setup_console (CONSOLE_OUTPUT, (! restart)) < 0)
-		nih_free (nih_error_get ());
+	if (system_setup_console (CONSOLE_OUTPUT, (! restart)) < 0) {
+		NihError *err;
+
+		err = nih_error_get ();
+		nih_warn ("%s: %s", _("Unable to initialize console, will try /dev/null"),
+			  err->message);
+		nih_free (err);
+
+		if (system_setup_console (CONSOLE_NONE, FALSE) < 0) {
+			err = nih_error_get ();
+			nih_fatal ("%s: %s", _("Unable to initialize console as /dev/null"),
+				   err->message);
+			nih_free (err);
+
+			exit (1);
+		}
+	}
 
 	/* Set the PATH environment variable */
 	setenv ("PATH", PATH, TRUE);
@@ -316,8 +331,16 @@
 	/* Now that the startup is complete, send all further logging output
 	 * to kmsg instead of to the console.
 	 */
-	if (system_setup_console (CONSOLE_NONE, FALSE) < 0)
-		nih_free (nih_error_get ());
+	if (system_setup_console (CONSOLE_NONE, FALSE) < 0) {
+		NihError *err;
+		
+		err = nih_error_get ();
+		nih_fatal ("%s: %s", _("Unable to setup standard file descriptors"),
+			   err->message);
+		nih_free (err);
+
+		exit (1);
+	}
 
 	nih_log_set_logger (logger_kmsg);
 #endif /* DEBUG */

