2000-12-20 Fernando Nasser <fnasser@redhat.com>

* complaints.c (complain): Call warning_hook if defined, instead of
        writting to gdb_stderr.
        (clear_complaints): Do not write anything to gdb_stderr if warning_hook
        is defined.
This commit is contained in:
Fernando Nasser 2000-12-20 17:32:17 +00:00
parent 49c890fc5e
commit 22d1504010
2 changed files with 37 additions and 15 deletions

View file

@ -1,3 +1,10 @@
2000-12-20 Fernando Nasser <fnasser@redhat.com>
* complaints.c (complain): Call warning_hook if defined, instead of
writting to gdb_stderr.
(clear_complaints): Do not write anything to gdb_stderr if warning_hook
is defined.
2000-12-19 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* sh-tdep.c (sh_print_register): Don't leave regnum 0 out of the

View file

@ -83,30 +83,45 @@ complain (struct complaint *complaint,...)
/* Isolated messages, must be self-explanatory. */
case 0:
begin_line ();
fputs_filtered ("During symbol reading, ", gdb_stderr);
wrap_here ("");
vfprintf_filtered (gdb_stderr, complaint->message, args);
fputs_filtered (".\n", gdb_stderr);
if (warning_hook)
(*warning_hook) (complaint->message, args);
else
{
begin_line ();
fputs_filtered ("During symbol reading, ", gdb_stderr);
wrap_here ("");
vfprintf_filtered (gdb_stderr, complaint->message, args);
fputs_filtered (".\n", gdb_stderr);
}
break;
/* First of a series, without `set verbose'. */
case 1:
begin_line ();
fputs_filtered ("During symbol reading...", gdb_stderr);
vfprintf_filtered (gdb_stderr, complaint->message, args);
fputs_filtered ("...", gdb_stderr);
wrap_here ("");
complaint_series++;
if (warning_hook)
(*warning_hook) (complaint->message, args);
else
{
begin_line ();
fputs_filtered ("During symbol reading...", gdb_stderr);
vfprintf_filtered (gdb_stderr, complaint->message, args);
fputs_filtered ("...", gdb_stderr);
wrap_here ("");
complaint_series++;
}
break;
/* Subsequent messages of a series, or messages under `set verbose'.
(We'll already have produced a "Reading in symbols for XXX..."
message and will clean up at the end with a newline.) */
default:
vfprintf_filtered (gdb_stderr, complaint->message, args);
fputs_filtered ("...", gdb_stderr);
wrap_here ("");
if (warning_hook)
(*warning_hook) (complaint->message, args);
else
{
vfprintf_filtered (gdb_stderr, complaint->message, args);
fputs_filtered ("...", gdb_stderr);
wrap_here ("");
}
}
/* If GDB dumps core, we'd like to see the complaints first. Presumably
GDB will not be sending so many complaints that this becomes a
@ -133,7 +148,7 @@ clear_complaints (int sym_reading, int noisy)
p->counter = 0;
}
if (!sym_reading && !noisy && complaint_series > 1)
if (!sym_reading && !noisy && complaint_series > 1 && !warning_hook)
{
/* Terminate previous series, since caller won't. */
puts_filtered ("\n");