From: Felix Fietkau Date: Fri, 15 Jun 2007 15:59:56 +0000 (+0000) Subject: some shell variable handling fixes X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=5e6f8739be1b3de38ed7ad1c7dc80bc1f4c4bf31;p=openwrt%2Fstaging%2Frobimarko.git some shell variable handling fixes SVN-Revision: 7638 --- 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