summaryrefslogtreecommitdiff
path: root/include/lib.sh
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2025-05-23 14:13:47 +0100
committerLeah Rowe <leah@libreboot.org>2025-05-23 14:13:47 +0100
commit383b9754fc65ed407ff57c8bc917ab839d37b0a7 (patch)
tree1aafbfc3e4fdae96bbf3cb1a92e608766fe8f17e /include/lib.sh
parent34dac6da99bd79ec75e63997aaebbf5de2debbe8 (diff)
parent3e28873532b13a750df04d8dad8ffacb159cc7da (diff)
Merge branch 'master' into 25.06_branch25.06_branch
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_()