You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
761 B
19 lines
761 B
#!/bin/bash |
|
# https://gist.github.com/anthonyaxenov/925e2db217730a49f20600520b748039 |
|
# Original: https://gist.github.com/akostadinov/33bb2606afe1b334169dfbf202991d36 |
|
# The difference is that this func outputs stacktrace in reverse order (from top level to lower ones) |
|
function print_stacktrace () { |
|
STACK="" |
|
local i |
|
local stack_size=${#FUNCNAME[@]} |
|
echo "Stacktrace:" |
|
# skip this function and "MAIN non_file_source:0" |
|
for (( i=$stack_size-1; i>=1; i-- )); do |
|
local func="${FUNCNAME[$i]}" |
|
[ x$func = x ] && func=MAIN |
|
local linen="${BASH_LINENO[$(( i - 1 ))]}" |
|
local src="${BASH_SOURCE[$i]}" |
|
[ x"$src" = x ] && src=non_file_source |
|
echo -e "\n at $func $src:$linen" |
|
done |
|
}
|
|
|