summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-22 16:55:31 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-22 16:55:31 +0000
commit6762e5d4cc62a85ee750419aec83d8b64ab59a63 (patch)
treed637f5bf08dc77ada6e9120c761440d00e245cc1
parentbedf02f2fd081428a8a79bed6500c7301174de71 (diff)
add patch from #2111
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8106 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rwxr-xr-xpackage/base-files/files/etc/functions.sh6
-rwxr-xr-xpackage/base-files/files/etc/rc.common24
2 files changed, 17 insertions, 13 deletions
diff --git a/package/base-files/files/etc/functions.sh b/package/base-files/files/etc/functions.sh
index 4446931d59..a613e1190b 100755
--- a/package/base-files/files/etc/functions.sh
+++ b/package/base-files/files/etc/functions.sh
@@ -146,14 +146,16 @@ config_set() {
config_foreach() {
local function="$1"
- local type="$2"
+ [ "$#" -ge 1 ] && shift
+ local type="$1"
+ [ "$#" -ge 1 ] && shift
local section cfgtype
[ -z "$CONFIG_SECTIONS" ] && return 0
for section in ${CONFIG_SECTIONS}; do
config_get cfgtype "$section" TYPE
[ -n "$type" -a "x$cfgtype" != "x$type" ] && continue
- eval "$function \"\$section\""
+ eval "$function \"\$section\" \"\$@\""
done
}
diff --git a/package/base-files/files/etc/rc.common b/package/base-files/files/etc/rc.common
index 4ffc79890a..99e2a5db62 100755
--- a/package/base-files/files/etc/rc.common
+++ b/package/base-files/files/etc/rc.common
@@ -67,24 +67,26 @@ EOF
}
initscript="$1"
-action="$2"
+[ "$#" -ge 1 ] && shift
+action="$1"
+[ "$#" -ge 1 ] && shift
. "$initscript"
cmds=
for cmd in $EXTRA_COMMANDS; do
- cmds="${cmds:+$cmds$N}$cmd) $cmd;;"
+ cmds="${cmds:+$cmds$N}$cmd) $cmd \"\$@\";;"
done
eval "case \"\$action\" in
- start) start;;
- stop) stop;;
- reload) reload || restart;;
- restart) restart;;
- boot) boot;;
- shutdown) shutdown;;
- enable) enable;;
- enabled) enabled;;
- disable) disable;;
+ start) start \"\$@\";;
+ stop) stop \"\$@\";;
+ reload) reload \"\$@\" || restart \"\$@\";;
+ restart) restart \"\$@\";;
+ boot) boot \"\$@\";;
+ shutdown) shutdown \"\$@\";;
+ enable) enable \"\$@\";;
+ enabled) enabled \"\$@\";;
+ disable) disable \"\$@\";;
$cmds
*) help;;
esac"