public inbox for gdb-cvs@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] Change members of tui_locator_window to std::string
@ 2019-09-20 20:06 Tom Tromey
  0 siblings, 0 replies; only message in thread
From: Tom Tromey @ 2019-09-20 20:06 UTC (permalink / raw)
  To: gdb-cvs

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=9923f347c4e4b9ed710de3404444cf46b04135a0

commit 9923f347c4e4b9ed710de3404444cf46b04135a0
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Sep 1 08:13:24 2019 -0600

    Change members of tui_locator_window to std::string
    
    This changes two members of tui_locator_window to have type
    std::string.  This removes a static limit.
    
    gdb/ChangeLog
    2019-09-20  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-stack.h (MAX_LOCATOR_ELEMENT_LEN): Remove define.
    	(struct tui_locator_window) <full_name, proc_name>: Now
    	std::string.
    	* tui/tui-stack.c (tui_locator_window::make_status_line)
    	(tui_locator_window::set_locator_fullname)
    	(tui_locator_window::set_locator_info): Update.
    	* tui/tui-source.c (tui_source_window::set_contents)
    	(tui_source_window::showing_source_p): Update.

Diff:
---
 gdb/ChangeLog        | 11 +++++++++++
 gdb/tui/tui-source.c |  4 ++--
 gdb/tui/tui-stack.c  | 18 +++++++-----------
 gdb/tui/tui-stack.h  | 10 ++--------
 4 files changed, 22 insertions(+), 21 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 401c742..8d586e7 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,16 @@
 2019-09-20  Tom Tromey  <tom@tromey.com>
 
+	* tui/tui-stack.h (MAX_LOCATOR_ELEMENT_LEN): Remove define.
+	(struct tui_locator_window) <full_name, proc_name>: Now
+	std::string.
+	* tui/tui-stack.c (tui_locator_window::make_status_line)
+	(tui_locator_window::set_locator_fullname)
+	(tui_locator_window::set_locator_info): Update.
+	* tui/tui-source.c (tui_source_window::set_contents)
+	(tui_source_window::showing_source_p): Update.
+
+2019-09-20  Tom Tromey  <tom@tromey.com>
+
 	* tui/tui-stack.c (tui_locator_window::set_locator_fullname):
 	Don't call tui_locator_win_info_ptr.
 
diff --git a/gdb/tui/tui-source.c b/gdb/tui/tui-source.c
index f70e053..e6cc0db 100644
--- a/gdb/tui/tui-source.c
+++ b/gdb/tui/tui-source.c
@@ -179,7 +179,7 @@ tui_source_window::set_contents (struct gdbarch *arch,
 	      element->line_or_addr.loa = LOA_LINE;
 	      element->line_or_addr.u.line_no = cur_line_no;
 	      element->is_exec_point
-		= (filename_cmp (locator->full_name,
+		= (filename_cmp (locator->full_name.c_str (),
 				 symtab_to_fullname (s)) == 0
 		   && cur_line_no == locator->line_no);
 
@@ -213,7 +213,7 @@ bool
 tui_source_window::showing_source_p (const char *fullname) const
 {
   return (!content.empty ()
-	  && (filename_cmp (tui_locator_win_info_ptr ()->full_name,
+	  && (filename_cmp (tui_locator_win_info_ptr ()->full_name.c_str (),
 			    fullname) == 0));
 }
 
diff --git a/gdb/tui/tui-stack.c b/gdb/tui/tui-stack.c
index 8301879..d66e358 100644
--- a/gdb/tui/tui-stack.c
+++ b/gdb/tui/tui-stack.c
@@ -166,12 +166,12 @@ tui_locator_window::make_status_line () const
   /* Procedure/class name.  */
   if (proc_width > 0)
     {
-      if (strlen (proc_name) > proc_width)
+      if (proc_name.size () > proc_width)
         string.printf ("%s%*.*s* ", PROC_PREFIX,
-		       1 - proc_width, proc_width - 1, proc_name);
+		       1 - proc_width, proc_width - 1, proc_name.c_str ());
       else
         string.printf ("%s%*.*s ", PROC_PREFIX,
-		       -proc_width, proc_width, proc_name);
+		       -proc_width, proc_width, proc_name.c_str ());
     }
 
   if (line_width > 0)
@@ -250,8 +250,7 @@ tui_locator_window::rerender ()
 void
 tui_locator_window::set_locator_fullname (const char *fullname)
 {
-  full_name[0] = 0;
-  strcat_to_buf (full_name, MAX_LOCATOR_ELEMENT_LEN, fullname);
+  full_name = fullname;
   rerender ();
 }
 
@@ -272,16 +271,13 @@ tui_locator_window::set_locator_info (struct gdbarch *gdbarch_in,
   if (fullname == NULL)
     fullname = "";
 
-  locator_changed_p |= strncmp (proc_name, procname,
-				MAX_LOCATOR_ELEMENT_LEN) != 0;
+  locator_changed_p |= proc_name != procname;
   locator_changed_p |= lineno != line_no;
   locator_changed_p |= addr_in != addr;
   locator_changed_p |= gdbarch_in != gdbarch;
-  locator_changed_p |= strncmp (full_name, fullname,
-				MAX_LOCATOR_ELEMENT_LEN) != 0;
+  locator_changed_p |= full_name != fullname;
 
-  proc_name[0] = (char) 0;
-  strcat_to_buf (proc_name, MAX_LOCATOR_ELEMENT_LEN, procname);
+  proc_name = procname;
   line_no = lineno;
   addr = addr_in;
   gdbarch = gdbarch_in;
diff --git a/gdb/tui/tui-stack.h b/gdb/tui/tui-stack.h
index b6ffa98..93a79fb 100644
--- a/gdb/tui/tui-stack.h
+++ b/gdb/tui/tui-stack.h
@@ -26,12 +26,6 @@
 
 struct frame_info;
 
-#ifdef PATH_MAX
-# define MAX_LOCATOR_ELEMENT_LEN        PATH_MAX
-#else
-# define MAX_LOCATOR_ELEMENT_LEN        1024
-#endif
-
 /* Locator window class.  */
 
 struct tui_locator_window : public tui_gen_win_info
@@ -57,8 +51,8 @@ struct tui_locator_window : public tui_gen_win_info
   /* Set the full_name portion of the locator.  */
   void set_locator_fullname (const char *fullname);
 
-  char full_name[MAX_LOCATOR_ELEMENT_LEN];
-  char proc_name[MAX_LOCATOR_ELEMENT_LEN];
+  std::string full_name;
+  std::string proc_name;
   int line_no = 0;
   CORE_ADDR addr = 0;
   /* Architecture associated with code at this location.  */


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-09-20 20:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-20 20:06 [binutils-gdb] Change members of tui_locator_window to std::string Tom Tromey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).