From 040caceff305b7d30e4de03f1307562b6cd058fc Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Fri, 15 Jun 2007 15:59:56 +0000 Subject: [PATCH] some shell variable handling fixes git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7638 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/base-files/files/etc/functions.sh | 6 +++--- package/base-files/files/lib/config/uci.sh | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package/base-files/files/etc/functions.sh b/package/base-files/files/etc/functions.sh index 7ba59afbbe..8d1117163d 100755 --- a/package/base-files/files/etc/functions.sh +++ b/package/base-files/files/etc/functions.sh @@ -55,7 +55,7 @@ config_rename() { local oldvar local newvar - [ "$OLD" -a "$NEW" ] || return + [ -n "$OLD" -a -n "$NEW" ] || return for oldvar in `set | grep ^CONFIG_${OLD}_ | \ sed -e 's/\(.*\)=.*$/\1/'` ; do newvar="CONFIG_${NEW}_${oldvar##CONFIG_${OLD}_}" @@ -139,7 +139,7 @@ config_foreach() { [ -z "$CONFIG_SECTIONS" ] && return 0 for section in ${CONFIG_SECTIONS}; do config_get cfgtype "$section" TYPE - [ -n "$type" -a "$cfgtype" != "$type" ] && continue + [ -n "$type" -a "x$cfgtype" != "x$type" ] && continue eval "$function \"\$section\"" done } @@ -186,7 +186,7 @@ strtok() { # { [] ... } shift 2 done - if [ $# -gt 0 -a "$val" ]; then + if [ $# -gt 0 -a -n "$val" ]; then export ${NO_EXPORT:+-n} "$1=$val"; count=$((count+1)) fi diff --git a/package/base-files/files/lib/config/uci.sh b/package/base-files/files/lib/config/uci.sh index da6ecab51c..a539388359 100644 --- a/package/base-files/files/lib/config/uci.sh +++ b/package/base-files/files/lib/config/uci.sh @@ -90,7 +90,7 @@ uci_set() { ( # spawn a subshell so you don't mess up the current environment uci_load "$PACKAGE" config_get OLDVAL "$CONFIG" "$OPTION" - if [ "$OLDVAL" != "$VALUE" ]; then + if [ "x$OLDVAL" != "x$VALUE" ]; then config_get type "$CONFIG" TYPE [ -z "$type" ] fi