Change behavour of internal-error to quit and dump core by default.
This commit is contained in:
parent
3ab9460d38
commit
375fc98382
4 changed files with 28 additions and 17 deletions
|
@ -1,3 +1,8 @@
|
|||
2002-01-17 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* utils.c (internal_verror): Fix comments, default is yes not no.
|
||||
Update queries to match. Default to quit and dump core.
|
||||
|
||||
2002-01-17 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* breakpoint.c: Update assuming #if UI_OUT is always true. Update
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2002-01-17 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* gdb.base/maint.exp: Update ``maint internal-error'' to match
|
||||
continue/quit query. Update copyright.
|
||||
|
||||
2002-01-13 Daniel Jacobowitz <drow@mvista.com>
|
||||
|
||||
* gdb.c++/demangle.exp: Accept slightly dubious v2 demangler result
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
# Copyright 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
|
@ -660,8 +660,8 @@ gdb_expect {
|
|||
|
||||
send_gdb "maint internal-error\n"
|
||||
gdb_expect {
|
||||
-re "Continue this debugging session.*\\(y or n\\) $" {
|
||||
send_gdb "y\n"
|
||||
-re "Quit this debugging session.*\\(y or n\\) $" {
|
||||
send_gdb "n\n"
|
||||
gdb_expect {
|
||||
-re "Create a core file.*\\(y or n\\) $" {
|
||||
send_gdb "n\n"
|
||||
|
|
29
gdb/utils.c
29
gdb/utils.c
|
@ -694,7 +694,7 @@ internal_verror (const char *file, int line,
|
|||
{
|
||||
static char msg[] = "Internal GDB error: recursive internal error.\n";
|
||||
static int dejavu = 0;
|
||||
int continue_p;
|
||||
int quit_p;
|
||||
int dump_core_p;
|
||||
|
||||
/* don't allow infinite error recursion. */
|
||||
|
@ -719,18 +719,26 @@ internal_verror (const char *file, int line,
|
|||
vfprintf_unfiltered (gdb_stderr, fmt, ap);
|
||||
fputs_unfiltered ("\n", gdb_stderr);
|
||||
|
||||
/* Default (no case) is to quit GDB. When in batch mode this
|
||||
/* Default (yes/batch case) is to quit GDB. When in batch mode this
|
||||
lessens the likelhood of GDB going into an infinate loop. */
|
||||
continue_p = query ("\
|
||||
quit_p = query ("\
|
||||
An internal GDB error was detected. This may make further\n\
|
||||
debugging unreliable. Continue this debugging session? ");
|
||||
debugging unreliable. Quit this debugging session? ");
|
||||
|
||||
/* Default (no case) is to not dump core. Lessen the chance of GDB
|
||||
leaving random core files around. */
|
||||
/* Default (yes/batch case) is to dump core. This leaves a GDB
|
||||
dropping so that it is easier to see that something went wrong to
|
||||
GDB. */
|
||||
dump_core_p = query ("\
|
||||
Create a core file containing the current state of GDB? ");
|
||||
|
||||
if (continue_p)
|
||||
if (quit_p)
|
||||
{
|
||||
if (dump_core_p)
|
||||
abort (); /* NOTE: GDB has only three calls to abort(). */
|
||||
else
|
||||
exit (1);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (dump_core_p)
|
||||
{
|
||||
|
@ -738,13 +746,6 @@ Create a core file containing the current state of GDB? ");
|
|||
abort (); /* NOTE: GDB has only three calls to abort(). */
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (dump_core_p)
|
||||
abort (); /* NOTE: GDB has only three calls to abort(). */
|
||||
else
|
||||
exit (1);
|
||||
}
|
||||
|
||||
dejavu = 0;
|
||||
return_to_top_level (RETURN_ERROR);
|
||||
|
|
Loading…
Reference in a new issue