diff options
author | Daniel Friesel <derf@derf.homelinux.org> | 2009-07-06 20:38:53 +0200 |
---|---|---|
committer | Daniel Friesel <derf@derf.homelinux.org> | 2009-07-06 20:38:53 +0200 |
commit | 2f2756ab422102fb686a2d7fc1e4f65e82ec7f01 (patch) | |
tree | 451b258a66fdfb1778f059f2dcb7f24dc92f5083 /bin/pkg | |
parent | 6efcf520749fbfc491920816da764dbab94d8417 (diff) |
pkg: Execute prereqs in function scope
This should encourage the use of typeset / setopt localoptions where neccessary
Diffstat (limited to 'bin/pkg')
-rwxr-xr-x | bin/pkg | 21 |
1 files changed, 13 insertions, 8 deletions
@@ -465,6 +465,18 @@ function check_prereqs { wrap_info $1 info "checking prerequisites\n" + # function scope → typeset and localoptions are possible + function source_prereqs { + { + source prereqs + } always { + if (( TRY_BLOCK_ERROR )) { + warn "Error in prereqs script\n" + TRY_BLOCK_ERROR=0 + } + } + } + function is_installed { [[ -d $PKG_DIR/$1 ]] } @@ -507,14 +519,7 @@ function check_prereqs { } } - { - source prereqs - } always { - if (( TRY_BLOCK_ERROR )) { - warn "Error in prereqs script\n" - TRY_BLOCK_ERROR=0 - } - } + source_prereqs if [[ -n $warn || -n $info ]] { [[ -n $warn ]] && warn $warn |