From b7e077222ee350f4bd6c76134064acdbd2ce2b32 Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Fri, 18 Mar 2022 19:14:25 +0000 Subject: [PATCH] Fix crash with stepi, no debug info, and "set debug infrun 1" A stepi in a function without debug info with "set debug infrun 1" crashes GDB since commit c8353d682f69 (gdb/infrun: some extra infrun debug print statements), due to a reference to "tp->current_symtab->filename" when tp->current_symtab is null. This commit adds the missing null check. The output in this case becomes: [infrun] set_step_info: symtab = , line = 0, step_frame_id = {stack=0x7fffffffd980,code=0x0000000000456c30,!special}, step_stack_frame_id = {stack=0x7fffffffd980,code=0x0000000000456c30,!special} Change-Id: I5171a9d222bc7e15b9dba2feaba7d55c7acd99f8 --- gdb/infrun.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gdb/infrun.c b/gdb/infrun.c index bc6521c8ec6..104c29abf0a 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -4180,7 +4180,8 @@ set_step_info (thread_info *tp, struct frame_info *frame, infrun_debug_printf ("symtab = %s, line = %d, step_frame_id = %s, step_stack_frame_id = %s", - tp->current_symtab->filename, tp->current_line, + tp->current_symtab != nullptr ? tp->current_symtab->filename : "", + tp->current_line, tp->control.step_frame_id.to_string ().c_str (), tp->control.step_stack_frame_id.to_string ().c_str ()); } -- 2.30.2