summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Reisner <dreisner@archlinux.org>2011-09-11 05:21:22 +0200
committerAllan McRae <allan@archlinux.org>2011-09-11 05:47:07 +0200
commitc736a12e86b826f3079f3cccde86d497528f85f3 (patch)
tree1912678ef26a48ecc6ae8b8e0c3ea3ce33801d2b
parent7f1235ccbc3a81a4f8a50de96cea512353d6773e (diff)
downloadpacman-c736a12e86b826f3079f3cccde86d497528f85f3.tar.gz
pacman-c736a12e86b826f3079f3cccde86d497528f85f3.tar.xz
makepkg: unset errexit when sourcing /etc/profile
This is a fix for a bash3 specific bug, where a file sourced by /etc/profile would exit non-zero and make its way back up to makepkg, forcing it to exit after package installation. Along with unsetting the ERR handler, temporarily unset errexit to avoid this. Signed-off-by: Dave Reisner <dreisner@archlinux.org>
-rw-r--r--scripts/makepkg.sh.in4
1 files changed, 3 insertions, 1 deletions
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 5981603b..b678f7e5 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -474,11 +474,13 @@ handle_deps() {
fi
# we might need the new system environment
- # avoid triggering the ERR trap
+ # avoid triggering the ERR trap and exiting
+ set +e
local restoretrap=$(trap -p ERR)
trap - ERR
source /etc/profile &>/dev/null
eval $restoretrap
+ set -e
return $R_DEPS_SATISFIED
}