[pushed] Change tui_update_locator_fullname to take a symtab

Sourceware to Gerrit sync (Code Review) gerrit@gnutoolchain-gerrit.osci.io
Fri Dec 20 16:21:00 GMT 2019


The original change was created by Tom Tromey.

Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/630
......................................................................

Change tui_update_locator_fullname to take a symtab

This changes tui_update_locator_fullname to take a symtab.  This
somewhat consolidates the "??" handling.

gdb/ChangeLog
2019-12-20  Tom Tromey  <tom@tromey.com>

	* tui/tui.c (tui_show_source): Update.
	* tui/tui-winsource.c (tui_display_main): Update.
	* tui/tui-stack.h (tui_update_locator_fullname): Change parameter
	to symtab.
	* tui/tui-stack.c (tui_update_locator_fullname): Change parameter
	to symtab.
	* tui/tui-disasm.c (tui_show_disassem_and_update_source): Update.

Change-Id: Ic61749517b44ac68561d829ff81f16976b830dec
---
M gdb/ChangeLog
M gdb/tui/tui-disasm.c
M gdb/tui/tui-stack.c
M gdb/tui/tui-stack.h
M gdb/tui/tui-winsource.c
M gdb/tui/tui.c
6 files changed, 21 insertions(+), 13 deletions(-)



diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1b838b9..5a79f6a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,15 @@
 2019-12-20  Tom Tromey  <tom@tromey.com>
 
+	* tui/tui.c (tui_show_source): Update.
+	* tui/tui-winsource.c (tui_display_main): Update.
+	* tui/tui-stack.h (tui_update_locator_fullname): Change parameter
+	to symtab.
+	* tui/tui-stack.c (tui_update_locator_fullname): Change parameter
+	to symtab.
+	* tui/tui-disasm.c (tui_show_disassem_and_update_source): Update.
+
+2019-12-20  Tom Tromey  <tom@tromey.com>
+
 	PR tui/23619:
 	* tui/tui-io.c (tui_rl_saved_prompt): Remove.
 	(tui_redisplay_readline): Use rl_display_prompt.
diff --git a/gdb/tui/tui-disasm.c b/gdb/tui/tui-disasm.c
index 9819cb9..18e281e 100644
--- a/gdb/tui/tui-disasm.c
+++ b/gdb/tui/tui-disasm.c
@@ -297,12 +297,8 @@
       val.u.line_no = sal.line;
       TUI_SRC_WIN->update_source_window (gdbarch, sal.symtab, val);
       if (sal.symtab)
-	{
-	  set_current_source_symtab_and_line (sal);
-	  tui_update_locator_fullname (symtab_to_fullname (sal.symtab));
-	}
-      else
-	tui_update_locator_fullname ("?");
+	set_current_source_symtab_and_line (sal);
+      tui_update_locator_fullname (sal.symtab);
     }
 }
 
diff --git a/gdb/tui/tui-stack.c b/gdb/tui/tui-stack.c
index 078f819..7803b95 100644
--- a/gdb/tui/tui-stack.c
+++ b/gdb/tui/tui-stack.c
@@ -288,10 +288,15 @@
 
 /* Update only the full_name portion of the locator.  */
 void
-tui_update_locator_fullname (const char *fullname)
+tui_update_locator_fullname (struct symtab *symtab)
 {
   struct tui_locator_window *locator = tui_locator_win_info_ptr ();
 
+  const char *fullname;
+  if (symtab != nullptr)
+    fullname = symtab_to_fullname (symtab);
+  else
+    fullname = "??";
   locator->set_locator_fullname (fullname);
 }
 
diff --git a/gdb/tui/tui-stack.h b/gdb/tui/tui-stack.h
index 27af5d2..97e6956 100644
--- a/gdb/tui/tui-stack.h
+++ b/gdb/tui/tui-stack.h
@@ -77,7 +77,7 @@
   std::string make_status_line () const;
 };
 
-extern void tui_update_locator_fullname (const char *);
+extern void tui_update_locator_fullname (struct symtab *symtab);
 extern void tui_show_locator_content (void);
 extern int tui_show_frame_info (struct frame_info *);
 
diff --git a/gdb/tui/tui-winsource.c b/gdb/tui/tui-winsource.c
index 6653709..938a0af 100644
--- a/gdb/tui/tui-winsource.c
+++ b/gdb/tui/tui-winsource.c
@@ -57,10 +57,7 @@
 
 	  tui_update_source_windows_with_addr (gdbarch, addr);
 	  s = find_pc_line_symtab (addr);
-          if (s != NULL)
-             tui_update_locator_fullname (symtab_to_fullname (s));
-          else
-             tui_update_locator_fullname ("??");
+	  tui_update_locator_fullname (s);
 	}
     }
 }
diff --git a/gdb/tui/tui.c b/gdb/tui/tui.c
index dc0d22f..8bffb30 100644
--- a/gdb/tui/tui.c
+++ b/gdb/tui/tui.c
@@ -635,7 +635,7 @@
   tui_add_win_to_layout (SRC_WIN);
 
   tui_update_source_windows_with_line (cursal.symtab, line);
-  tui_update_locator_fullname (fullname);
+  tui_update_locator_fullname (cursal.symtab);
 }
 
 void

-- 
Gerrit-Project: binutils-gdb
Gerrit-Branch: master
Gerrit-Change-Id: Ic61749517b44ac68561d829ff81f16976b830dec
Gerrit-Change-Number: 630
Gerrit-PatchSet: 3
Gerrit-Owner: Tom Tromey <tromey@sourceware.org>
Gerrit-MessageType: newpatchset



More information about the Gdb-patches mailing list