summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2025-05-19 19:24:43 +0100
committerLeah Rowe <leah@libreboot.org>2025-05-19 19:24:43 +0100
commitd9c64b267540a7c0a62f219c1c27c790234fd11c (patch)
tree5274d17a5a3b7108fb5b91b87d419ed1bbfc88f7 /include
parentb25a4876434d371dc4278d71365574158c77d47d (diff)
xbmk: stricter handling of files on while loops
i overlooked these! Signed-off-by: Leah Rowe <leah@libreboot.org>
Diffstat (limited to 'include')
-rw-r--r--include/lib.sh4
-rw-r--r--include/tree.sh5
2 files changed, 5 insertions, 4 deletions
diff --git a/include/lib.sh b/include/lib.sh
index 6c831795..025db88a 100644
--- a/include/lib.sh
+++ b/include/lib.sh
@@ -106,9 +106,9 @@ fx_()
dx_()
{
- [ -f "$2" ] && while read -r fx; do
+ [ ! -f "$2" ] || while read -r fx; do
$1 "$fx" || return 1
- done < "$2"; :
+ done < "$2" || err "dx_ $*: cannot read '$2'"; :
}
x_()
diff --git a/include/tree.sh b/include/tree.sh
index 25d4732c..9dccf857 100644
--- a/include/tree.sh
+++ b/include/tree.sh
@@ -332,8 +332,9 @@ check_makefile()
copy_elf()
{
- [ -f "$listfile" ] && x_ mkdir -p "$dest_dir" && while read -r f; do
+ [ -f "$listfile" ] && x_ mkdir -p "$dest_dir"
+ [ ! -f "$listfile" ] || while read -r f; do
[ -f "$srcdir/$f" ] && x_ cp "$srcdir/$f" "$dest_dir"
- done < "$listfile"
+ done < "$listfile" || err "copy_elf $*: cannot read '$listfile'"
x_ make clean -C "$srcdir" $cleanargs
}