diff options
author | Tom Tromey <tom@tromey.com> | 2019-11-05 18:12:49 -0700 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2019-11-05 18:39:23 -0700 |
commit | 825165c57e43b25ef57c3cf2cc345ec6aa40a0d3 (patch) | |
tree | f4e382291555614bc2c4d5924332c3a3a8fc5943 | |
parent | 8e71a6e725ad881367f410f7d6f9a3106f3a2232 (diff) | |
download | binutils-825165c57e43b25ef57c3cf2cc345ec6aa40a0d3.zip binutils-825165c57e43b25ef57c3cf2cc345ec6aa40a0d3.tar.gz binutils-825165c57e43b25ef57c3cf2cc345ec6aa40a0d3.tar.bz2 |
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
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/tui/tui-disasm.c | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 5720c8e..e886480 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 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> + * rust-lang.c (rust_language_defn): Update. * python/py-value.c (valpy_string): Call c_get_string. * p-lang.c (pascal_language_defn): Update. diff --git a/gdb/tui/tui-disasm.c b/gdb/tui/tui-disasm.c index 7178326..8d5512e 100644 --- a/gdb/tui/tui-disasm.c +++ b/gdb/tui/tui-disasm.c @@ -47,6 +47,7 @@ struct tui_asm_line { CORE_ADDR addr; std::string addr_string; + size_t addr_size; std::string insn; }; @@ -110,6 +111,7 @@ tui_disassemble (struct gdbarch *gdbarch, else new_size = asm_lines[pos + i].addr_string.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); @@ -239,8 +241,7 @@ tui_disasm_window::set_contents (struct gdbarch *arch, std::string line = (asm_lines[i].addr_string - + n_spaces (insn_pos - - asm_lines[i].addr_string.size ()) + + n_spaces (insn_pos - asm_lines[i].addr_size) + asm_lines[i].insn); const char *ptr = line.c_str (); |