]> git.xonotic.org Git - xonotic/xonotic.git/blobdiff - all
use a full BT
[xonotic/xonotic.git] / all
diff --git a/all b/all
index a36db2684662e2aa2d982a6e62934a82f99a5bc1..27b5680e80351c6b84d3285c52073bde8cd34bbe 100755 (executable)
--- a/all
+++ b/all
@@ -666,12 +666,29 @@ case "$cmd" in
                        fi
                fi
 
+               binary=$1
+
                if [ -n "$USE_GDB" ]; then
                        set -- gdb --args "$@"
+               elif which gdb >/dev/null 2>&1; then
+                       set -- gdb --batch -x savecore.gdb --args "$@"
                elif which catchsegv >/dev/null 2>&1; then
                        set -- catchsegv "$@"
                fi
+               rm -f xonotic.core
                "$@"
+               if [ -f xonotic.core ]; then
+                       if yesno "The program has CRASHED. Do you want to examine the core dump?"; then
+                               gdb "$binary" xonotic.core
+                       #elif yesno "You did not want to examine the core dump. Do you want to provide it - including your DarkPlaces checkout - to the Xonotic developers?"; then
+                       #       tar cvzf xonotic.core.tar.gz xonotic.core darkplaces/*.c darkplaces/*.h
+                       #       # somehow send it
+                       #       rm -f xonotic.core.tar.gz
+                       else
+                               echo "The core dump can be examined later by"
+                               echo "  gdb $binary xonotic.core"
+                       fi
+               fi
                ;;
        each|foreach)
                keep_going=false