[PATCHv2 0/2] gdb/tui: Assembler window scrolling fixes

Andrew Burgess
2020-01-16T00:48:37Z

This revision addresses the issues raised by Shahab, as well as making
the improvements Tom pointed out.

I looked at changing the TERM type from ansi to xterm as Tom
suggested, but figuring out all of the extra control sequences that
are sent was taking too much effort. I might try to revisit this when
I have more time, but I don't plan to do this in the immediate future.

I did start adding a mechanism to try and detect when the user tries
to scroll and we're already at the end of the output (or the
beginning), and this helped in the scroll down case, but I still need
to figure out how to use this in the scroll up case, so for now I've
not included this work in this patch set.

There's still some things I think could be improved with the assembler
scrolling - the user is currenly "trapped" inside the continuous
memory region that the $pc starts in, they can't scroll to any
disjoint code region, but this never worked before either, so this
isn't a regression. I do have an idea for how to fix this, but I'm
hoping to merge this set first, and work on the multi-section support
when I can find some time later.

Comments/feedback welcome as always,

Thanks,
Andrew

---

Andrew Burgess (1):
gdb/tui: asm window handles invalid memory and scrolls better

Pedro Alves (1):
gdb/tui: Prevent exceptions from trying to cross readline

gdb/ChangeLog | 17 +++
gdb/minsyms.c | 41 ++++--
gdb/minsyms.h | 17 ++-
gdb/testsuite/ChangeLog | 4 +
gdb/testsuite/gdb.tui/tui-layout-asm.exp | 41 ++++++
gdb/tui/tui-disasm.c | 243 +++++++++++++++++++++++--------
gdb/tui/tui-io.c | 31 +++-
7 files changed, 313 insertions(+), 81 deletions(-)

--
2.14.5