Move EBUILD_MASTER_PID and associated SIGTERM trap into ebuild_main()
authorZac Medico <zmedico@gentoo.org>
Fri, 13 Aug 2010 17:32:48 +0000 (10:32 -0700)
committerZac Medico <zmedico@gentoo.org>
Fri, 13 Aug 2010 17:32:48 +0000 (10:32 -0700)
since it seems more reliable this way. This helps us avoid having
EbuildIpcDaemon need to send a kill signal (and triggering the
zombie message too). This is especially important for the die helper
which is called by other helpers for EAPI 4.

bin/ebuild.sh

index 8b458705dcea6ebbf3c3d8e9a7853479ce2c6fe7..1b1c054f177b6eca6ec451a995de7c1f8597be40 100755 (executable)
@@ -54,10 +54,6 @@ qa_call() {
        return $retval
 }
 
-# Subshell/helper die support (must export for the die helper).
-export EBUILD_MASTER_PID=$$
-trap 'exit 1' SIGTERM
-
 EBUILD_SH_ARGS="$*"
 
 shift $#
@@ -2034,6 +2030,11 @@ if [ "${EBUILD_PHASE}" != "depend" ] ; then
 fi
 
 ebuild_main() {
+
+       # Subshell/helper die support (must export for the die helper).
+       export EBUILD_MASTER_PID=$BASHPID
+       trap 'exit 1' SIGTERM
+
        local f x
 
        if [[ $EBUILD_PHASE != depend ]] ; then