Replace the current diefunc() and die alias with a single die() function.
authorZac Medico <zmedico@gentoo.org>
Thu, 31 Jan 2008 08:06:18 +0000 (08:06 -0000)
committerZac Medico <zmedico@gentoo.org>
Thu, 31 Jan 2008 08:06:18 +0000 (08:06 -0000)
The previous arguments to diefunc() weren't used anyway. The result is
that the die message looks better because it doesn't show the alias and
all of it's arguments which are totally irrelevant. (trunk r9215:9217)

svn path=/main/branches/2.1.2/; revision=9245

bin/isolated-functions.sh

index 7228cbd77ef5b1a55206a126ba451d46ce8bfa95..7e7e710e05d958c23d7f6644815cd04f9151a155 100644 (file)
@@ -5,8 +5,7 @@
 # We need this next line for "die" and "assert". It expands
 # It _must_ preceed all the calls to die and assert.
 shopt -s expand_aliases
-alias die='diefunc "$FUNCNAME" "$LINENO" "$?"'
-alias assert='_pipestatus="${PIPESTATUS[*]}"; [[ "${_pipestatus// /}" -eq 0 ]] || diefunc "$FUNCNAME" "$LINENO" "$_pipestatus"'
+alias assert='_pipestatus="${PIPESTATUS[*]}"; [[ "${_pipestatus// /}" -eq 0 ]] || die'
 alias save_IFS='[ "${IFS:-unset}" != "unset" ] && old_IFS="${IFS}"'
 alias restore_IFS='if [ "${old_IFS:-unset}" != "unset" ]; then IFS="${old_IFS}"; unset old_IFS; else unset IFS; fi'
 
@@ -48,9 +47,7 @@ dump_trace() {
        done
 }
 
-diefunc() {
-       local funcname="$1" lineno="$2" exitcode="$3"
-       shift 3
+die() {
        if [ -n "${QA_INTERCEPTORS}" ] ; then
                # die was called from inside inherit. We need to clean up
                # QA_INTERCEPTORS since sed is called below.
@@ -139,6 +136,12 @@ diefunc() {
        exit 1
 }
 
+# We need to implement diefunc() since environment.bz2 files contain
+# calls to it (due to alias expansion).
+diefunc() {
+       die "${@}"
+}
+
 quiet_mode() {
        [[ ${PORTAGE_QUIET} -eq 1 ]]
 }
@@ -437,7 +440,7 @@ save_ebuild_env() {
                # There's no need to bloat environment.bz2 with internally defined
                # functions and variables, so filter them out if possible.
 
-               unset -f dump_trace diefunc quiet_mode vecho elog_base eqawarn elog \
+               unset -f dump_trace die diefunc quiet_mode vecho elog_base eqawarn elog \
                        esyslog einfo einfon ewarn eerror ebegin _eend eend KV_major \
                        KV_minor KV_micro KV_to_int get_KV unset_colors set_colors has \
                        hasv hasq qa_source qa_call addread addwrite adddeny addpredict \