This is the mail archive of the
gdb-prs@sources.redhat.com
mailing list for the GDB project.
Re: cli/1815: GDB can crash with overridden "down" command
- From: Skip Montanaro <skip at pobox dot com>
- To: nobody at sources dot redhat dot com
- Cc: gdb-prs at sources dot redhat dot com,
- Date: 22 Nov 2004 16:28:02 -0000
- Subject: Re: cli/1815: GDB can crash with overridden "down" command
- Reply-to: Skip Montanaro <skip at pobox dot com>
The following reply was made to PR cli/1815; it has been noted by GNATS.
From: Skip Montanaro <skip@pobox.com>
To: gdb-gnats@sources.redhat.com
Cc:
Subject: Re: cli/1815: GDB can crash with overridden "down" command
Date: Mon, 22 Nov 2004 10:21:21 -0600
Okay, here's a proper traceback with line numbers. This was provoked b=
y
executing "do" in a Solaris/Intel version of gdb 5.3.
(gdb) bt
#0 0x656d6172 in ?? ()
#1 0x080ed260 in execute_command (p=3D0x823ba0a "", from_tty=3D1) at t=
op.c:711
#2 0x080bd143 in command_handler (command=3D0x823ba08 "do") at event-t=
op.c:504
#3 0x080bd562 in command_line_handler (rl=3D0x87886e0 "=F0\206x\b")
at event-top.c:799
#4 0x08180081 in rl_callback_read_char () at callback.c:114
#5 0x080bcae3 in rl_callback_read_char_wrapper (client_data=3D0x0)
at event-top.c:168
#6 0x080bd056 in stdin_event_handler (error=3D0, client_data=3D0x0)
at event-top.c:418
#7 0x080bc41c in handle_file_event (event_file_desc=3D0) at event-loop=
.c:714
#8 0x080bbf1b in process_event () at event-loop.c:334
#9 0x080bbf64 in gdb_do_one_event (data=3D0x0) at event-loop.c:371
#10 0x080ecf36 in do_catch_errors (uiout=3D0x825d838, data=3D0x80464d0)=
at top.c:492
#11 0x080ece94 in catcher (func=3D0x80ecf28 <do_catch_errors>,=20
func_uiout=3D0x825d838, func_args=3D0x80464d0, func_val=3D0x80464c8=
,=20
func_caught=3D0x80464cc, errstring=3D0x81b5bc0 "", mask=3D6) at top=
.c:424
#12 0x080ecf6c in catch_errors (func=3D0x80bbf34 <gdb_do_one_event>,=20=
func_args=3D0x0, errstring=3D0x81b5bc0 "", mask=3D6) at top.c:504
#13 0x080bbf87 in start_event_loop () at event-loop.c:395
#14 0x08079f8e in captured_command_loop (data=3D0x0) at main.c:96
#15 0x080ecf36 in do_catch_errors (uiout=3D0x825d838, data=3D0x80467b0)=
at top.c:492
#16 0x080ece94 in catcher (func=3D0x80ecf28 <do_catch_errors>,=20
func_uiout=3D0x825d838, func_args=3D0x80467b0, func_val=3D0x80467a8=
,=20
func_caught=3D0x80467ac, errstring=3D0x819afcd "", mask=3D6) at top=
.c:424
#17 0x080ecf6c in catch_errors (func=3D0x8079f4c <captured_command_loop=
>,=20
func_args=3D0x0, errstring=3D0x819afcd "", mask=3D6) at top.c:504
#18 0x0807a70f in captured_main (data=3D0x8046c60) at main.c:729
#19 0x080ecf36 in do_catch_errors (uiout=3D0x821e1c0, data=3D0x8046c20)=
at top.c:492
#20 0x080ece94 in catcher (func=3D0x80ecf28 <do_catch_errors>,=20
func_uiout=3D0x821e1c0, func_args=3D0x8046c20, func_val=3D0x8046c18=
,=20
func_caught=3D0x8046c1c, errstring=3D0x819afcd "", mask=3D6) at top=
.c:424
#21 0x080ecf6c in catch_errors (func=3D0x8079f90 <captured_main>,=20
func_args=3D0x8046c60, errstring=3D0x819afcd "", mask=3D6) at top.c=
:504
#22 0x0807aa2f in gdb_main (args=3D0x8046c60) at main.c:738
#23 0x08079ee6 in main (argc=3D2, argv=3D0x8046cac) at gdb.c:33
Here are the arguments passed to cmd_func:
(gdb) p *c
$3 =3D {
next =3D 0x20637024,=20
name =3D 0x7665203e <Address 0x7665203e out of bounds>,=20
class =3D 1717529697,=20
func =3D 0x656d6172,=20
function =3D {
cfunc =3D 0x20262620,=20
sfunc =3D 0x20262620
},=20
context =3D 0x20637024,=20
doc =3D 0x7950203c <Address 0x7950203c out of bounds>,=20
flags =3D 1818326597,=20
replacement =3D 0x6176455f <Address 0x6176455f out of bounds>,=20
pre_show_hook =3D 0x646f436c,=20
hook_pre =3D 0x784565,=20
hook_post =3D 0x65646f43,=20
hook_in =3D 49,=20
prefixlist =3D 0x0,=20
prefixname =3D 0x3 <Address 0x3 out of bounds>,=20
allow_unknown =3D 0 '\0',=20
abbrev_flag =3D 0 '\0',=20
completer =3D 0x14,=20
type =3D not_set_cmd,=20
var =3D 0x0,=20
var_type =3D var_boolean,=20
enums =3D 0x80fa814,=20
user_commands =3D 0x5c,=20
hookee_pre =3D 0x68,=20
hookee_post =3D 0x0,=20
cmd_pointer =3D 0x824a840
}
(gdb) p arg
$4 =3D 0x0
(gdb) p from_tty=20
$5 =3D 136620048
(gdb) p caution
$6 =3D 1
Let me know if there is more input I can provide to help diagnose the b=
ug.
Skip