diff options
Diffstat (limited to 'gdb/tui')
-rw-r--r-- | gdb/tui/tui-stack.c | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/gdb/tui/tui-stack.c b/gdb/tui/tui-stack.c index f618d7c..0068610 100644 --- a/gdb/tui/tui-stack.c +++ b/gdb/tui/tui-stack.c @@ -342,16 +342,23 @@ tui_show_frame_info (struct frame_info *fi) struct tui_gen_win_info *locator = tui_locator_win_info_ptr (); int source_already_displayed; struct symtab_and_line sal; + CORE_ADDR pc; find_frame_sal (fi, &sal); source_already_displayed = sal.symtab != 0 && tui_source_is_displayed (sal.symtab->filename); - tui_set_locator_info (get_frame_arch (fi), - sal.symtab == 0 ? "??" : sal.symtab->filename, - tui_get_function_from_frame (fi), - sal.line, - get_frame_pc (fi)); + + if (get_frame_pc_if_available (fi, &pc)) + tui_set_locator_info (get_frame_arch (fi), + sal.symtab == 0 ? "??" : sal.symtab->filename, + tui_get_function_from_frame (fi), + sal.line, + pc); + else + tui_set_locator_info (get_frame_arch (fi), + "??", _("<unavailable>"), sal.line, 0); + tui_show_locator_content (); start_line = 0; for (i = 0; i < (tui_source_windows ())->count; i++) |