summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-12-09 15:15:25 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-12-09 15:15:25 +0000
commitdaa59b7513eb66b7c184474ea188fda4dd4a4aee (patch)
tree30990af542b6edffbe21b0cf0c42eeabdd0229ee
parent6b2e482b317dd94119a2a8f0b101ebd4c1c07753 (diff)
do not start multiple subshells for applying /etc/uci-defaults. use sh -x for hush compatibility
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18717 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rwxr-xr-xpackage/base-files/files/etc/functions.sh4
-rwxr-xr-xpackage/base-files/files/etc/init.d/boot7
2 files changed, 5 insertions, 6 deletions
diff --git a/package/base-files/files/etc/functions.sh b/package/base-files/files/etc/functions.sh
index a788c4cc4..61c04953d 100755
--- a/package/base-files/files/etc/functions.sh
+++ b/package/base-files/files/etc/functions.sh
@@ -263,7 +263,7 @@ jffs2_mark_erase() {
echo -e "\xde\xad\xc0\xde" | mtd -qq write - "$1"
}
-uci_apply_defaults() {(
+uci_apply_defaults() {
cd /etc/uci-defaults || return 0
files="$(ls)"
[ -z "$files" ] && return 0
@@ -272,6 +272,6 @@ uci_apply_defaults() {(
( . "./$(basename $file)" ) && rm -f "$file"
done
uci commit
-)}
+}
[ -z "$IPKG_INSTROOT" -a -f /lib/config/uci.sh ] && . /lib/config/uci.sh
diff --git a/package/base-files/files/etc/init.d/boot b/package/base-files/files/etc/init.d/boot
index aa9e96778..2ed4c5061 100755
--- a/package/base-files/files/etc/init.d/boot
+++ b/package/base-files/files/etc/init.d/boot
@@ -35,10 +35,9 @@ system_config() {
[ -x /sbin/klogd ] && klogd ${klogconloglevel:+-c $klogconloglevel}
}
-apply_uci_config() {(
- include /lib/config
- uci_apply_defaults
-)}
+apply_uci_config() {
+ sh -c '. /etc/functions.sh; include /lib/config; uci_apply_defaults'
+}
start() {
[ -f /proc/mounts ] || /sbin/mount_root