X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fxonotic.git;a=blobdiff_plain;f=all;h=1a65b7d5eedae160163826919f138a46618c8a27;hp=a2509ec1dca4fe6d699cc781235f26824545de8f;hb=47a07537c4c92b353cb21b42b67909ec5488b257;hpb=e98e758c0c10e4efda92e070baca06b9cf41dce4;ds=sidebyside diff --git a/all b/all index a2509ec1..1a65b7d5 100755 --- a/all +++ b/all @@ -111,14 +111,14 @@ enter() repos_urls=" . | | master | data/xonotic-data.pk3dir | | master | -data/xonotic-maps.pk3dir | | master | data/xonotic-music.pk3dir | | master | data/xonotic-nexcompat.pk3dir | | master | no -mediasource | | master | no darkplaces | | div0-stable | svn -fteqcc | git://github.com/Blub/qclib.git | master | -div0-gittools | | master | no netradiant | | master | +div0-gittools | | master | no +data/xonotic-maps.pk3dir | | master | +mediasource | | master | no +fteqcc | http://github.com/Blub/qclib.git | master | " # todo: in darkplaces, change repobranch to div0-stable @@ -666,10 +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 + "$@" || true + 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 @@ -833,7 +852,7 @@ case "$cmd" in GIT_NOTES_REF=refs/notes/admin-merge git notes edit -m "Merge failed:$LF`cat "$t"`" "$ref" reportdo4 cat "$t" reportecho4 "--> merge failed" - elif ! "$SELF" compile -n 2>&1 | tee "$t"; then + elif ! "$SELF" compile 2>&1 | tee "$t"; then git reset --hard "$org" GIT_NOTES_REF=refs/notes/admin-merge git notes edit -m "Compile failed:$LF`cat "$t"`" "$ref" reportdo4 cat "$t" @@ -950,6 +969,7 @@ case "$cmd" in if $gotomaster; then if $fetchupstream; then verbose git fetch origin + verbose git remote prune origin fi verbose git checkout -f "`repobranch "$d"`" verbose git reset --hard origin/"`repobranch "$d"`" @@ -961,6 +981,7 @@ case "$cmd" in upstream="$rem/${bra#refs/heads/}" if $fetchupstream; then verbose git fetch "$rem" + verbose git remote prune "$rem" fi if ! git rev-parse "$upstream" >/dev/null 2>&1; then upstream="origin/`repobranch "$d"`"