summaryrefslogtreecommitdiff
path: root/include/lib.sh
diff options
context:
space:
mode:
Diffstat (limited to 'include/lib.sh')
-rw-r--r--include/lib.sh20
1 files changed, 12 insertions, 8 deletions
diff --git a/include/lib.sh b/include/lib.sh
index 6c831795..7c4d71ea 100644
--- a/include/lib.sh
+++ b/include/lib.sh
@@ -53,8 +53,10 @@ setvars()
fi
val="$1"
shift 1
- for var in "$@"; do
- _setvars="$var=\"$val\"; $_setvars"
+ while true; do
+ [ $# -lt 1 ] && break
+ _setvars="$1=\"$val\"; $_setvars"
+ shift 1
done
printf "%s\n" "${_setvars% }"
}
@@ -69,9 +71,11 @@ setcfg()
chkvars()
{
- for var in "$@"; do
- eval "[ -n \"\${$var+x}\" ] || err \"$var unset\""
- eval "[ -n \"\$$var\" ] || err \"$var unset\""
+ while true; do
+ [ $# -lt 1 ] && break
+ eval "[ -n \"\${$1+x}\" ] || err \"$1 unset\""
+ eval "[ -n \"\$$1\" ] || err \"$1 unset\""
+ shift 1
done; :
}
@@ -106,9 +110,9 @@ fx_()
dx_()
{
- [ -f "$2" ] && while read -r fx; do
- $1 "$fx" || return 1
- done < "$2"; :
+ [ ! -f "$2" ] || while read -r fx; do
+ $1 "$fx" || return 1; :
+ done < "$2" || err "dx_ $*: cannot read '$2'"; :
}
x_()