`run_function_safe pkgver` is evaluated in a subshell and therefore does
not abort when it should. Explicitly check the return outside of the
subshell and abort if necessary.

Signed-off-by: Eli Schwartz <eschwa...@archlinux.org>
---
 scripts/makepkg.sh.in | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index bb24c633..1ab2ea3c 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -188,6 +188,9 @@ enter_fakeroot() {
 # Re-sources the PKGBUILD afterwards to allow for other variables that use 
$pkgver
 update_pkgver() {
        newpkgver=$(run_function_safe pkgver)
+       if (( $? != 0 )); then
+               error_function pkgver
+       fi
        if ! check_pkgver "$newpkgver"; then
                error "$(gettext "pkgver() generated an invalid version: %s")" 
"$newpkgver"
                exit $E_PKGBUILD_ERROR
-- 
2.18.0

Reply via email to