summaryrefslogtreecommitdiffstats
path: root/package/base-files/files/etc/init.d/rcS
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-04-30 22:59:18 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-04-30 22:59:18 +0000
commita55e31b51709c9fdfdf435c21c86d007b109f26e (patch)
tree30c145860775b82dd10af23cf5ee045ee7c44b9c /package/base-files/files/etc/init.d/rcS
parent6c29c7e73ed38155fdc2b86e52d203dd3479945c (diff)
rcS: wait for init scripts to complete before initiating the shutdown (patch from #5032)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15530 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files/files/etc/init.d/rcS')
-rwxr-xr-xpackage/base-files/files/etc/init.d/rcS16
1 files changed, 11 insertions, 5 deletions
diff --git a/package/base-files/files/etc/init.d/rcS b/package/base-files/files/etc/init.d/rcS
index 8c9114d33..c135024be 100755
--- a/package/base-files/files/etc/init.d/rcS
+++ b/package/base-files/files/etc/init.d/rcS
@@ -1,11 +1,17 @@
#!/bin/sh
# Copyright (C) 2006 OpenWrt.org
+run_scripts() {
+ for i in /etc/rc.d/$1*; do
+ [ -x $i ] && $i $2 2>&1
+ done | $LOGGER
+}
+
LOGGER="cat"
[ -x /usr/bin/logger ] && LOGGER="logger -s -p 6 -t sysinit"
-{
- for i in /etc/rc.d/$1*; do
- [ -x $i ] && $i $2 2>&1
- done
-} | $LOGGER &
+if [ "$1" = "S" ]; then
+ run_scripts "$1" "$2" &
+else
+ run_scripts "$1" "$2"
+fi