Merge "Add call trace in error message"
diff --git a/functions b/functions
index fe37e4c..0ec0911 100644
--- a/functions
+++ b/functions
@@ -76,6 +76,19 @@
}
+# Prints backtrace info
+# filename:lineno:function
+function backtrace {
+ local level=$1
+ local deep=$((${#BASH_SOURCE[@]} - 1))
+ echo "[Call Trace]"
+ while [ $level -le $deep ]; do
+ echo "${BASH_SOURCE[$deep]}:${BASH_LINENO[$deep-1]}:${FUNCNAME[$deep-1]}"
+ deep=$((deep - 1))
+ done
+}
+
+
# Prints line number and "message" then exits
# die $LINENO "message"
function die() {
@@ -85,6 +98,7 @@
if [ $exitcode == 0 ]; then
exitcode=1
fi
+ backtrace 2
err $line "$*"
exit $exitcode
}