summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2025-05-20 20:14:09 +0100
committerLeah Rowe <leah@libreboot.org>2025-05-20 20:14:09 +0100
commitf6b77822835fcd775a845c825a4e6a78abaa742a (patch)
tree4ae0f155619259c8ae3c2d3c21cbf9cb0f10b245 /include
parentfb7aaa78bb080a473bdf0edf449bf08045e8366c (diff)
Revert "vendor.sh: optimise find_me()"HEADmaster
This reverts commit fb7aaa78bb080a473bdf0edf449bf08045e8366c. it caused a few issues. will re-do later the old code isn't really broken, just inefficient, because several files are scanned twice, but in practise the overhead isn't that great The error occurs sometimes, when bruteforcing me.bin: ERROR ./mk: Unhandled error for: mv /home/user/lbmk/tmp/me.bin /home/user/lbmk/cache/tmpdl/check This revert should fix the issue, for now.
Diffstat (limited to 'include')
-rw-r--r--include/init.sh2
-rw-r--r--include/vendor.sh16
2 files changed, 7 insertions, 11 deletions
diff --git a/include/init.sh b/include/init.sh
index 39d48948..38eb1c81 100644
--- a/include/init.sh
+++ b/include/init.sh
@@ -181,7 +181,7 @@ pybin()
[ $venv -gt 0 ] && for pypath in "/usr/local/bin" "/usr/bin"; do
[ -e "$pypath/$1" ] && [ ! -d "$pypath/$1" ] && \
[ -x "$pypath/$1" ] && printf "%s/%s\n" "$pypath" "$1" && \
- return 0; :
+ return 0
done && return 1
# Defer to normal command -v if not a venv
diff --git a/include/vendor.sh b/include/vendor.sh
index 88c3fa04..2732eade 100644
--- a/include/vendor.sh
+++ b/include/vendor.sh
@@ -38,7 +38,7 @@ eval "`setvars "" has_hashes EC_hash DL_hash DL_url_bkup MRC_refcode_gbe vcfg \
E6400_VGA_DL_hash E6400_VGA_DL_url E6400_VGA_DL_url_bkup E6400_VGA_offset \
E6400_VGA_romname SCH5545EC_DL_url_bkup SCH5545EC_DL_hash _dest mecleaner \
kbc1126_ec_dump MRC_refcode_cbtree _dl SCH5545EC_DL_url EC_url rom DL_url \
- nuke cbfstoolref FSPFD_hash ME11bootguard ME11delta xromsize \
+ nuke cbfstoolref FSPFD_hash _7ztest ME11bootguard ME11delta xromsize \
ME11version ME11sku ME11pch _me _metmp mfs TBFW_url_bkup TBFW_url cbdir \
TBFW_hash TBFW_size hashfile EC_url_bkup FSPM_bin_hash FSPS_bin_hash \
EC_FW1_hash EC_FW2_hash ME_bin_hash MRC_bin_hash REF_bin_hash _dl_bin \
@@ -156,6 +156,7 @@ extract_intel_me()
{
e "$mecleaner" f not && err "$cbdir: me_cleaner missing"
+ _7ztest="$xbmklocal/metmp/a"
_metmp="$xbmklocal/me.bin"
x_ rm -f "$_metmp" "$xbmklocal/a"
@@ -164,7 +165,7 @@ extract_intel_me()
[ "$ME11bootguard" = "y" ] && x_ ./mk -f deguard
set +u +e
- x_ rm -Rf "$xbmklocal/metmp"
+ x_ rm -Rf "$xbmkpwd/metmp"
( fx_ find_me x_ find "$xbmkpwd/$appdir" -type f ) || :
[ "$ME11bootguard" != "y" ] && x_ mv "$_metmp" "$_pre_dest" && return 0
@@ -181,19 +182,14 @@ find_me()
[ -f "$_metmp" ] && exit 1
[ -L "$1" ] && return 0
- _7x="`mktemp`" || err "find_me: can't make tmp file"
- x_ rm -f "$_7x"
- _7x="$xbmklocal/metmp/${_7x##*/}"
-
- _r="-r"
- [ -n "$mfs" ] && _r=""
+ _7ztest="${_7ztest}a" && _r="-r" && [ -n "$mfs" ] && _r=""
"$mecleaner" $mfs $_r -t -O "$xbmklocal/a" -M "$_metmp" "$1" || \
"$mecleaner" $mfs $_r -t -O "$_metmp" "$1" || "$me7updateparser" \
- -O "$_metmp" "$1" || extract_archive "$1" "$_7x" || return 0
+ -O "$_metmp" "$1" || extract_archive "$1" "$_7ztest" || return 0
[ -f "$_metmp" ] && exit 1
- ( fx_ find_me x_ find "$_7x" -type f ) || exit 1; :
+ ( fx_ find_me x_ find "$_7ztest" -type f ) || exit 1; :
}
extract_archive()