From: Michael Tremer Date: Sat, 30 Jun 2012 09:46:35 +0000 (+0000) Subject: backtrace: Show something in backtrace when a function was called on a shell. X-Git-Tag: 005~79 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=04608623694e886f4ad739d689cd0f8c5e1e3b94;p=network.git backtrace: Show something in backtrace when a function was called on a shell. --- diff --git a/functions.util b/functions.util index 9228fd02..8abae181 100644 --- a/functions.util +++ b/functions.util @@ -187,12 +187,13 @@ function backtrace() { echo # Empty line error_log "Backtrace (most recent call in first line):" - local i + local i source for i in $(seq ${start} ${#BASH_SOURCE[*]}); do [ -z "${FUNCNAME[${i}]}" ] && continue [ "${FUNCNAME[${i}]}" == "main" ] && continue - error_log " $(printf "%20s" "'${FUNCNAME[${i}]}'") called from ${BASH_SOURCE[$(( ${i} + 1 ))]}:${BASH_LINENO[${i}]}" + source=${BASH_SOURCE[$(( ${i} + 1 ))]} + error_log " $(printf "%20s" "'${FUNCNAME[${i}]}'") called from ${source:-}:${BASH_LINENO[${i}]}" done }