diff --git a/contrib/scripts/ast_coredumper b/contrib/scripts/ast_coredumper
index df5242b9f114b26aeb2c1a98e5ad7b77ffc529e1..0215edb586adfcabe9c19c9fe496b6abc70f7506 100755
--- a/contrib/scripts/ast_coredumper
+++ b/contrib/scripts/ast_coredumper
@@ -419,8 +419,12 @@ fi
 # Extract the gdb scripts from the end of this script
 # and save them to /tmp/.gdbinit
 
+gdbinit=${OUTPUTDIR:-/tmp}/.ast_coredumper.gdbinit
+
+trap "rm $gdbinit" EXIT
+
 ss=`egrep -n "^#@@@SCRIPTSTART@@@" $0 |cut -f1 -d:`
-tail -n +${ss} $0 >${OUTPUTDIR:-/tmp}/.ast_coredumper.gdbinit
+tail -n +${ss} $0 >$gdbinit
 
 # Now iterate over the coredumps and dump the debugging info
 for i in ${!COREDUMPS[@]} ; do
@@ -431,7 +435,7 @@ for i in ${!COREDUMPS[@]} ; do
 	cfname=`basename ${cf}`
 	outputdir=${OUTPUTDIR:-${cfdir}}
 
-	${GDB} -n --batch -q --ex "source ${OUTPUTDIR:-/tmp}/.ast_coredumper.gdbinit" "$asterisk_bin" "$cf" 2>/dev/null | (
+	${GDB} -n --batch -q --ex "source $gdbinit" "$asterisk_bin" "$cf" 2>/dev/null | (
 		of=/dev/null
 		while IFS= read line ; do
 			if [[ "$line" =~ !@!@!@!\ ([^\ ]+)\ !@!@!@! ]] ; then