mirror of
https://github.com/moparisthebest/pacman
synced 2025-03-02 10:21:49 -05:00
makepkg: do not ignore errors from pacman when checking deps
As check_deps is run in a subshell, exit had the same meaning as return. Since the intention is to halt makepkg when pacman throws an error other than 127, the enclosing function has to handle error control instead. Fixes FS#19840 Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
parent
330951200c
commit
579533d1a0
@ -397,7 +397,7 @@ check_deps() {
|
||||
echo "$pmout"
|
||||
elif (( ret )); then
|
||||
error "$(gettext "'%s' returned a fatal error (%i): %s")" "$PACMAN" "$ret" "$pmout"
|
||||
exit 1
|
||||
return "$ret"
|
||||
fi
|
||||
}
|
||||
|
||||
@ -437,14 +437,15 @@ resolve_deps() {
|
||||
local R_DEPS_SATISFIED=0
|
||||
local R_DEPS_MISSING=1
|
||||
|
||||
local deplist="$(check_deps $*)"
|
||||
if [[ -z $deplist ]]; then
|
||||
return $R_DEPS_SATISFIED
|
||||
fi
|
||||
# deplist cannot be declared like this: local deplist=$(foo)
|
||||
# Otherwise, the return value will depend on the assignment.
|
||||
local deplist
|
||||
deplist="$(set +E; check_deps $*)" || exit 1
|
||||
[[ -z $deplist ]] && return $R_DEPS_SATISFIED
|
||||
|
||||
if handle_deps $deplist; then
|
||||
# check deps again to make sure they were resolved
|
||||
deplist="$(check_deps $*)"
|
||||
deplist="$(set +E; check_deps $*)" || exit 1
|
||||
[[ -z $deplist ]] && return $R_DEPS_SATISFIED
|
||||
elif (( DEP_BIN )); then
|
||||
error "$(gettext "Failed to install all missing dependencies.")"
|
||||
|
Loading…
x
Reference in New Issue
Block a user