summaryrefslogtreecommitdiff
path: root/include/vendor.sh
diff options
context:
space:
mode:
Diffstat (limited to 'include/vendor.sh')
-rw-r--r--include/vendor.sh17
1 files changed, 11 insertions, 6 deletions
diff --git a/include/vendor.sh b/include/vendor.sh
index a0806dd8..7fb4d9ea 100644
--- a/include/vendor.sh
+++ b/include/vendor.sh
@@ -217,7 +217,7 @@ fetch()
return 0
fi
- x_ mkdir -p "${_dest%/*}"
+ x_ xbmkdir "${_dest%/*}"
if [ "$dl_type" != "fsp" ]; then
extract_archive "$_dl" "$appdir" || \
@@ -490,12 +490,17 @@ extract_fsp()
setvfile()
{
- [ -n "$vcfg" ] && for c in $checkvarschk; do
- vcmd="[ \"\${$c}\" = \"/dev/null\" ] || [ -z \"\${$c}\" ]"
- eval "$vcmd || return 0"
+ [ -n "$vcfg" ] && for c in $checkvarschk
+ do
+ do_getvfile="n"
+ vcmd="[ \"\${$c}\" != \"/dev/null\" ] && [ -n \"\${$c}\" ]"
- if getvfile "$@"; then
- return 0
+ eval "$vcmd && do_getvfile=\"y\""
+
+ if [ "$do_getvfile" = "y" ]; then
+ if getvfile "$@"; then
+ return 0
+ fi
fi
done && return 1; :
}