summaryrefslogtreecommitdiffstats
path: root/bin/isolated-functions.sh
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-11-11 22:17:05 +0000
committerZac Medico <zmedico@gentoo.org>2007-11-11 22:17:05 +0000
commit11890e7047b42c3be6a9b2e88974fc6f16f58130 (patch)
tree3690dd55ed0133012c2d61401271084fc03ed65f /bin/isolated-functions.sh
parent8801ddef8980789b55af9799aebd17ab4a8d55c0 (diff)
downloadportage-11890e7047b42c3be6a9b2e88974fc6f16f58130.tar.gz
portage-11890e7047b42c3be6a9b2e88974fc6f16f58130.tar.bz2
portage-11890e7047b42c3be6a9b2e88974fc6f16f58130.zip
Make diefunc() clean up QA_INTERCEPTORS in case it is
called from inherit() since sed called below. svn path=/main/trunk/; revision=8490
Diffstat (limited to 'bin/isolated-functions.sh')
-rwxr-xr-xbin/isolated-functions.sh7
1 files changed, 6 insertions, 1 deletions
diff --git a/bin/isolated-functions.sh b/bin/isolated-functions.sh
index f471f8cae..b46f50a4d 100755
--- a/bin/isolated-functions.sh
+++ b/bin/isolated-functions.sh
@@ -41,7 +41,12 @@ dump_trace() {
diefunc() {
local funcname="$1" lineno="$2" exitcode="$3"
shift 3
-
+ if [ -n "${QA_INTERCEPTORS}" ] ; then
+ # die was called from inside inherit. We need to clean up
+ # QA_INTERCEPTORS since sed is called below.
+ unset -f ${QA_INTERCEPTORS}
+ unset QA_INTERCEPTORS
+ fi
local n filespacing=0 linespacing=0
# setup spacing to make output easier to read
for ((n = ${#FUNCNAME[@]} - 1; n >= 0; --n)); do