[PR tui/15933] TUI shows registers of the wrong frame the first time

I've stumbled on this by inspection.

When the TUI's register window is first displayed, it always shows the
registers of the current frame, instead of of the selected frame,
which is obviously bogus.

E.g.,

 (gdb) step             # into "function"
 (gdb) up
 (gdb) tui reg general  # or C-x 2, C-x 2

shows the registers of "function", rather than the caller's.

A subsequent:

 (gdb) frame

or

 (gdb) down
 (gdb) up

can be used as workaround to "fix" it.

gdb/
2013-09-05  Pedro Alves  <palves@redhat.com>

	PR tui/15933
	* tui/tui-regs.c (tui_show_registers): Show registers of the
	selected frame, not the current frame.
This commit is contained in:
Pedro Alves 2013-09-05 11:20:16 +00:00
parent 48b1f08c9a
commit 8eb6bda23e
2 changed files with 7 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2013-09-05 Pedro Alves <palves@redhat.com>
PR tui/15933
* tui/tui-regs.c (tui_show_registers): Show registers of the
selected frame, not the current frame.
2013-09-05 Ricard Wanderlof <ricardw@axis.com>
* MAINTAINERS (Write After Approval): Add myself to the list.

View File

@ -157,7 +157,7 @@ tui_show_registers (struct reggroup *group)
if (target_has_registers && target_has_stack && target_has_memory)
{
ret = tui_show_register_group (group, get_current_frame (),
ret = tui_show_register_group (group, get_selected_frame (NULL),
group == display_info->current_group);
}
if (ret == TUI_FAILURE)