From 7a8bcb88e77380fe9672b4f10777cc9e48011dd4 Mon Sep 17 00:00:00 2001 From: Patrick Palka Date: Fri, 21 Aug 2015 12:04:25 -0400 Subject: [PATCH] Use tui_putc to output newline entered by the user This is necessary to make sure that start_line is updated after a command has been entered. Usually, start_line gets updated anyway because most commands output text, and outputting text is done through the function tui_puts, which updates start_line. However if a command does not output text, then tui_puts will not get called and start_line will not get updated in time for the next prompt to be displayed. One can observe this bug by executing the command "delete" within TUI. After executing, the prompt line (gdb) delete gets overwritten by the next prompt. With this patch, the prompt line gets preserved. gdb/ChangeLog: * tui/tui-io.c (tui_getc): Use tui_putc instead of waddch to emit the newline. --- gdb/ChangeLog | 5 +++++ gdb/tui/tui-io.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f5dd5f3e9b1..6ec04d0ad59 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2015-08-21 Patrick Palka + + * tui/tui-io.c (tui_getc): Use tui_putc instead of waddch to + emit the newline. + 2015-08-21 Gary Benson * gdb_bfd.c (gdb_bfd_iovec_fileio_pread): Add QUIT call. diff --git a/gdb/tui/tui-io.c b/gdb/tui/tui-io.c index f0ff5c0bcb6..bca1f584409 100644 --- a/gdb/tui/tui-io.c +++ b/gdb/tui/tui-io.c @@ -606,7 +606,7 @@ tui_getc (FILE *fp) py += px / TUI_CMD_WIN->generic.width; px %= TUI_CMD_WIN->generic.width; wmove (w, py, px); - waddch (w, ch); + tui_putc ('\n'); } } -- 2.30.2