summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/lib.sh2
-rw-r--r--include/vendor.sh13
-rwxr-xr-xmk2
3 files changed, 9 insertions, 8 deletions
diff --git a/include/lib.sh b/include/lib.sh
index 99401259..cb8e0303 100644
--- a/include/lib.sh
+++ b/include/lib.sh
@@ -27,7 +27,7 @@ err_()
exit 1
}
x_() {
- [ $# -lt 1 ] || eval "$@" || $err "Unhandled error on: $(echo "$@")"; :
+ [ $# -lt 1 ] || "$@" || $err "Unhandled error for: $(echo "$@")"; :
}
xbmkpwd="`pwd`" || $err "Cannot generate PWD"
diff --git a/include/vendor.sh b/include/vendor.sh
index 3693b5dc..ceea429a 100644
--- a/include/vendor.sh
+++ b/include/vendor.sh
@@ -190,7 +190,7 @@ extract_intel_me_bruteforce()
cdir="$1"; [ "${cdir#/a}" != "$cdir" ] && cdir="${cdir#/}"
cd "$cdir" || :
done
- )
+ ) || :
rm -Rf "$sdir" || $err "extract_intel_me: !rm -Rf $sdir - $dontflash"
}
@@ -364,7 +364,9 @@ vendor_inject()
readcfg && need_files="y"
if [ "$need_files" = "y" ] || [ -n "$new_mac" ]; then
- [ "$nukemode" = "nuke" ] || x_ ./mk download "$board"
+ if [ "$nukemode" != "nuke" ] && [ "$need_files" = "y" ]; then
+ x_ ./mk download "$board"
+ fi
patch_release_roms
fi
[ "$need_files" != "y" ] && printf \
@@ -460,6 +462,7 @@ patch_release_roms()
x_ tar -xf "$archive" -C "${tmpromdir%"/bin/$board"}"
for _hashes in $hashfiles; do
+ [ "$need_files" = "y" ] || break
e "$tmpromdir/$_hashes" f && has_hashes="y" && \
hashfile="$_hashes" && break; :
done
@@ -483,9 +486,11 @@ patch_release_roms()
"$vguide" > "$tmpromdir/README.md" || :
else
printf "Skipping vendorfiles on '%s'\n" "$archive" 1>&2
+ need_files="n"
fi
(
+ [ "$need_files" = "y" ] || exit 0
cd "$tmpromdir" || $err "patch '$archive': can't cd $tmpromdir"
# NOTE: For compatibility with older rom releases, defer to sha1
if [ "$has_hashes" = "y" ] && [ "$nukemode" != "nuke" ]; then
@@ -621,12 +626,8 @@ inject()
$err "failed: inject '$_t' '$_dest' on '$rom'"
[ "$nukemode" != "nuke" ] || "$ifdtool" $ifdprefix --nuke $_t \
"$rom" -O "$rom" || $err "$rom: !nuke IFD/$_t"
- xchanged="y"
- return 0
elif [ "$nukemode" = "nuke" ]; then
x_ "$cbfstool" "$rom" remove -n "$cbfsname"
- xchanged="y"
- return 0
elif [ "$_t" = "stage" ]; then # the only stage we handle is refcode
x_ mkdir -p tmp
x_ rm -f "tmp/refcode"
diff --git a/mk b/mk
index 29c8ee5d..2f5b6057 100755
--- a/mk
+++ b/mk
@@ -309,7 +309,7 @@ check_project_hashes()
$err "!sort project tmp/list"
while read -r rmchk; do
- [ ! -f "$rmchk" ] || sha512sum "$rmchk" | awk \
+ [ ! -f "$rmchk" ] || x_ sha512sum "$rmchk" | awk \
'{print $1}' >> "$TMPDIR/project.hash" || $err "!h $rmchk"
done < "$TMPDIR/project.list"