[PATCH] Fix placement of output in TUI mode
Tom Tromey
tom@tromey.com
Sat Jan 12 20:40:00 GMT 2019
The fix for PR tui/28819 regressed gdb command output a bit. In
"nonl" mode, pressing the Enter key will result in a newline not being
echoed properly, so that gdb output for the command will begin on the
same line as the input.
This patch changes gdb_wgetch to echo the newline. I have only tested
this interactively, as the TUI doesn't have automated tests in
general.
gdb/ChangeLog
2019-01-12 Tom Tromey <tom@tromey.com>
PR tui/28819:
* tui/tui-io.c (gdb_wgetch): Print \r when needed.
---
gdb/ChangeLog | 5 +++++
gdb/tui/tui-io.c | 6 ++++++
2 files changed, 11 insertions(+)
diff --git a/gdb/tui/tui-io.c b/gdb/tui/tui-io.c
index 0e53350820..9191ccae7e 100644
--- a/gdb/tui/tui-io.c
+++ b/gdb/tui/tui-io.c
@@ -609,6 +609,12 @@ gdb_wgetch (WINDOW *win)
nonl ();
int r = wgetch (win);
nl ();
+ /* In nonl mode, if the user types Enter, it will not be echoed
+ properly. This will result in gdb output appearing immediately
+ after the command. So, if we read \r, emit a \r now, after nl
+ mode has been re-entered, so that the output looks correct. */
+ if (r == '\r')
+ puts ("\r");
return r;
}
--
2.17.2
More information about the Gdb-patches
mailing list