aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Landley <rob@landley.net>2006-03-22 17:39:13 +0000
committerRob Landley <rob@landley.net>2006-03-22 17:39:13 +0000
commit2dd42799594c6197ca97ca3ec65ec73c81af0875 (patch)
treeea04a7f57dcca3ae3c5958bcb51ce5f41fc55eca
parent2324a7c9e5809441cbba5ea3e84bcea65578b725 (diff)
downloadbusybox-w32-2dd42799594c6197ca97ca3ec65ec73c81af0875.tar.gz
busybox-w32-2dd42799594c6197ca97ca3ec65ec73c81af0875.tar.bz2
busybox-w32-2dd42799594c6197ca97ca3ec65ec73c81af0875.zip
Patch from Rogelio Serrano to defer checking whether the tty exists until
we actually need to spawn something on it.
-rw-r--r--init/init.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/init/init.c b/init/init.c
index 2ddcef936..704cfccda 100644
--- a/init/init.c
+++ b/init/init.c
@@ -620,7 +620,9 @@ static void run_actions(int action)
620 for (a = init_action_list; a; a = tmp) { 620 for (a = init_action_list; a; a = tmp) {
621 tmp = a->next; 621 tmp = a->next;
622 if (a->action == action) { 622 if (a->action == action) {
623 if (a->action & (SYSINIT | WAIT | CTRLALTDEL | SHUTDOWN | RESTART)) { 623 if (access(a->terminal, R_OK | W_OK)) {
624 delete_init_action(a);
625 } else if (a->action & (SYSINIT | WAIT | CTRLALTDEL | SHUTDOWN | RESTART)) {
624 waitfor(a); 626 waitfor(a);
625 delete_init_action(a); 627 delete_init_action(a);
626 } else if (a->action & ONCE) { 628 } else if (a->action & ONCE) {
@@ -815,9 +817,6 @@ static void new_init_action(int action, const char *command, const char *cons)
815 if (*cons == '\0') 817 if (*cons == '\0')
816 cons = console; 818 cons = console;
817 819
818 /* do not run entries if console device is not available */
819 if (access(cons, R_OK | W_OK))
820 return;
821 if (strcmp(cons, bb_dev_null) == 0 && (action & ASKFIRST)) 820 if (strcmp(cons, bb_dev_null) == 0 && (action & ASKFIRST))
822 return; 821 return;
823 822