summaryrefslogtreecommitdiffstats
path: root/package/busybox/patches/001-init_avoid_loop_opening_tty.patch
diff options
context:
space:
mode:
authornico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-09-28 12:38:46 +0000
committernico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-09-28 12:38:46 +0000
commit9dfc3e34ee54d00b68cc4cbb5cddcfa588fd07fb (patch)
tree0c8df24973e5339e60c5aae5a5d461d18d373cac /package/busybox/patches/001-init_avoid_loop_opening_tty.patch
parent21e17d6ad463edff7baf6e25a30041dcf22a8c4e (diff)
[package] busybox: update to v1.14.4 (closes: #5619)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@17782 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/busybox/patches/001-init_avoid_loop_opening_tty.patch')
-rw-r--r--package/busybox/patches/001-init_avoid_loop_opening_tty.patch31
1 files changed, 13 insertions, 18 deletions
diff --git a/package/busybox/patches/001-init_avoid_loop_opening_tty.patch b/package/busybox/patches/001-init_avoid_loop_opening_tty.patch
index ed790d807..8cc9ca2c8 100644
--- a/package/busybox/patches/001-init_avoid_loop_opening_tty.patch
+++ b/package/busybox/patches/001-init_avoid_loop_opening_tty.patch
@@ -1,20 +1,15 @@
--- a/init/init.c
+++ b/init/init.c
-@@ -497,12 +497,11 @@ static void run_actions(int action_type)
- for (a = init_action_list; a; a = tmp) {
- tmp = a->next;
- if (a->action_type & action_type) {
-- // Pointless: run() will error out if open of device fails.
-- ///* a->terminal of "" means "init's console" */
-- //if (a->terminal[0] && access(a->terminal, R_OK | W_OK)) {
-- // //message(L_LOG | L_CONSOLE, "Device %s cannot be opened in RW mode", a->terminal /*, strerror(errno)*/);
-- // delete_init_action(a);
-- //} else
-+ /* a->terminal of "" means "init's console" */
-+ if (a->terminal[0] && access(a->terminal, R_OK | W_OK)) {
-+ //message(L_LOG | L_CONSOLE, "Device %s cannot be opened in RW mode", a->terminal /*, strerror(errno)*/);
-+ delete_init_action(a);
-+ } else
- if (a->action_type & (SYSINIT | WAIT | CTRLALTDEL | SHUTDOWN | RESTART)) {
- waitfor(run(a));
- delete_init_action(a);
+@@ -451,8 +451,11 @@ static void run_actions(int action_type)
+ /* Only run stuff with pid == 0. If pid != 0,
+ * it is already running
+ */
+- if (a->pid == 0)
++ if (a->pid == 0) {
++ if (a->terminal && access(a->terminal, R_OK | W_OK))
++ continue;
+ a->pid = run(a);
++ }
+ }
+ }
+ }