[pacman-dev] [PATCH] makepkg: unset errexit when sourcing /etc/profile

Dave Reisner d at falconindy.com
Sat Sep 10 23:22:49 EDT 2011


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 at archlinux.org>
---
 scripts/makepkg.sh.in |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 5981603..a130557 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 +x
 	local restoretrap=$(trap -p ERR)
 	trap - ERR
 	source /etc/profile &>/dev/null
 	eval $restoretrap
+	set -x
 
 	return $R_DEPS_SATISFIED
 }
-- 
1.7.6.1



More information about the pacman-dev mailing list