[PATCH 19/24] Remove the TUI annotation hack

Tom Tromey tom@tromey.com
Sat Jan 4 18:34:00 GMT 2020


do_tui_putc has some code to remove annotations from gdb output.  This
was added in 2001, see commit a198b876bbcb.

However, I think this code is not needed.  It seems very unlikely to
enable both annotations and the TUI, and in any case I think this is
something that should not be supported.

So, this patch removes this code.

2020-01-04  Tom Tromey  <tom@tromey.com>

	* tui/tui-io.c (do_tui_putc): Don't omit annotations.

Change-Id: I05728110365a362d37c9821df9c8779316100bb8
---
 gdb/ChangeLog    |  4 ++++
 gdb/tui/tui-io.c | 36 +++++++++++-------------------------
 2 files changed, 15 insertions(+), 25 deletions(-)

diff --git a/gdb/tui/tui-io.c b/gdb/tui/tui-io.c
index 9cb41104fe9..7f23ef9daf1 100644
--- a/gdb/tui/tui-io.c
+++ b/gdb/tui/tui-io.c
@@ -138,35 +138,21 @@ static int tui_readline_pipe[2];
 static void
 do_tui_putc (WINDOW *w, char c)
 {
-  static int tui_skip_line = -1;
-
-  /* Catch annotation and discard them.  We need two \032 and discard
-     until a \n is seen.  */
-  if (c == '\032')
-    {
-      tui_skip_line++;
-    }
-  else if (tui_skip_line != 1)
+  /* Expand TABs, since ncurses on MS-Windows doesn't.  */
+  if (c == '\t')
     {
-      tui_skip_line = -1;
-      /* Expand TABs, since ncurses on MS-Windows doesn't.  */
-      if (c == '\t')
-	{
-	  int col;
+      int col;
 
-	  col = getcurx (w);
-	  do
-	    {
-	      waddch (w, ' ');
-	      col++;
-	    }
-	  while ((col % 8) != 0);
+      col = getcurx (w);
+      do
+	{
+	  waddch (w, ' ');
+	  col++;
 	}
-      else
-	waddch (w, c);
+      while ((col % 8) != 0);
     }
-  else if (c == '\n')
-    tui_skip_line = -1;
+  else
+    waddch (w, c);
 }
 
 /* Update the cached value of the command window's start line based on
-- 
2.17.2



More information about the Gdb-patches mailing list