summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bin/isolated-functions.sh6
1 files changed, 4 insertions, 2 deletions
diff --git a/bin/isolated-functions.sh b/bin/isolated-functions.sh
index 1403c0aac..8af202f65 100644
--- a/bin/isolated-functions.sh
+++ b/bin/isolated-functions.sh
@@ -139,8 +139,10 @@ die() {
eerror "ERROR: $CATEGORY/$PF failed:"
eerror " ${*:-(no error message)}"
eerror
- # This part is useless when called by the die helper.
- if [[ ${BASH_SOURCE[1]##*/} != die ]] ; then
+ # dump_trace is useless when the main script is a helper binary
+ local main_index
+ (( main_index = ${#BASH_SOURCE[@]} - 1 ))
+ if has ${BASH_SOURCE[$main_index]##*/} ebuild.sh misc-functions.sh ; then
dump_trace 2 ${filespacing} ${linespacing}
eerror " $(printf "%${filespacing}s" "${BASH_SOURCE[1]##*/}"), line $(printf "%${linespacing}s" "${BASH_LINENO[0]}"): Called die"
eerror "The specific snippet of code:"