mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-21 02:24:17 +08:00
Fix regression from TUI disassembly style patch
My previous patch to add styling to the TUI disassembly failed to correctly fix a bug that Simon had pointed out in review. This patch fixes the bug. gdb/ChangeLog 2019-11-05 Tom Tromey <tom@tromey.com> * tui/tui-disasm.c (struct tui_asm_line) <addr_size>: New member. (tui_disassemble): Set addr_size. (tui_disasm_window::set_contents): Use addr_size. Change-Id: Ic0152f3b82a2f79be28ae46d590096661f271580
This commit is contained in:
@ -1,3 +1,9 @@
|
|||||||
|
2019-11-05 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
|
* tui/tui-disasm.c (struct tui_asm_line) <addr_size>: New member.
|
||||||
|
(tui_disassemble): Set addr_size.
|
||||||
|
(tui_disasm_window::set_contents): Use addr_size.
|
||||||
|
|
||||||
2019-11-05 Tom Tromey <tom@tromey.com>
|
2019-11-05 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
* rust-lang.c (rust_language_defn): Update.
|
* rust-lang.c (rust_language_defn): Update.
|
||||||
|
@ -47,6 +47,7 @@ struct tui_asm_line
|
|||||||
{
|
{
|
||||||
CORE_ADDR addr;
|
CORE_ADDR addr;
|
||||||
std::string addr_string;
|
std::string addr_string;
|
||||||
|
size_t addr_size;
|
||||||
std::string insn;
|
std::string insn;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -110,6 +111,7 @@ tui_disassemble (struct gdbarch *gdbarch,
|
|||||||
else
|
else
|
||||||
new_size = asm_lines[pos + i].addr_string.size ();
|
new_size = asm_lines[pos + i].addr_string.size ();
|
||||||
*addr_size = std::max (*addr_size, new_size);
|
*addr_size = std::max (*addr_size, new_size);
|
||||||
|
asm_lines[pos + i].addr_size = new_size;
|
||||||
}
|
}
|
||||||
|
|
||||||
pc = pc + gdb_print_insn (gdbarch, pc, &gdb_dis_out, NULL);
|
pc = pc + gdb_print_insn (gdbarch, pc, &gdb_dis_out, NULL);
|
||||||
@ -239,8 +241,7 @@ tui_disasm_window::set_contents (struct gdbarch *arch,
|
|||||||
|
|
||||||
std::string line
|
std::string line
|
||||||
= (asm_lines[i].addr_string
|
= (asm_lines[i].addr_string
|
||||||
+ n_spaces (insn_pos
|
+ n_spaces (insn_pos - asm_lines[i].addr_size)
|
||||||
- asm_lines[i].addr_string.size ())
|
|
||||||
+ asm_lines[i].insn);
|
+ asm_lines[i].insn);
|
||||||
|
|
||||||
const char *ptr = line.c_str ();
|
const char *ptr = line.c_str ();
|
||||||
|
Reference in New Issue
Block a user