From: Fabian Groffen Date: Sun, 20 Dec 2009 17:48:38 +0000 (-0000) Subject: Merged from trunk -r15118:15121 X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=52ece0529dbc4954fdc504196ec01a3471049d33;p=portage.git Merged from trunk -r15118:15121 | 15119 | Fix the assert alias to 'value to great for base' messages | | zmedico | in some cases. Thanks to Jonathan Callen for | | | reporting. | | 15120 | Revert previous commit because it's no comptible (doesn't | | zmedico | pass arguments to die). | | 15121 | Fix the assert alias to avoid 'value to great for base' | | zmedico | messages in some cases. Thanks to Jonathan Callen | | | for reporting. | svn path=/main/branches/prefix/; revision=15123 --- diff --git a/bin/isolated-functions.sh b/bin/isolated-functions.sh index 5ae13fa1b..cfb8fbddd 100755 --- a/bin/isolated-functions.sh +++ b/bin/isolated-functions.sh @@ -5,10 +5,16 @@ # 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 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' +assert() { + local x pipestatus=${PIPESTATUS[*]} + for x in $pipestatus ; do + [[ $x -eq 0 ]] || die "$@" + done +} + shopt -s extdebug # dump_trace([number of funcs on stack to skip], @@ -527,7 +533,8 @@ save_ebuild_env() { done unset x - unset -f dump_trace die diefunc quiet_mode vecho elog_base eqawarn elog \ + unset -f assert 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 \ has_phase_defined_up_to \