public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: Andrew Burgess <aburgess@redhat.com>
To: Simon Marchi <simark@simark.ca>, gdb-patches@sourceware.org
Subject: Re: [PUSHED] gdb: make more use of make_target_connection_string
Date: Thu, 15 Dec 2022 16:54:05 +0000	[thread overview]
Message-ID: <87o7s4zjyq.fsf@redhat.com> (raw)
In-Reply-To: <2d9e0814-b4a8-fba8-9422-a1c746a15ebf@simark.ca>

Simon Marchi <simark@simark.ca> writes:

> On 12/15/22 07:53, Andrew Burgess via Gdb-patches wrote:
>> Oops!  I accidentally pushed this patch to master.
>> 
>> I haven't immediately reverted it because I think it is a pretty
>> obvious cleanup, but I would normally have posted this for review.
>> 
>> If anyone has any issues with the patch then please reply, I can
>> either fix any problems, or fully revert the patch if requeted.
>> 
>> Sorry for the carelessness.
>> 
>> Thanks,
>> Andrew
>
> I just spotted some nits, if you want to fix them up.
>
>> diff --git a/gdb/inferior.c b/gdb/inferior.c
>> index ec63e0491e5..3d2bce9df7b 100644
>> --- a/gdb/inferior.c
>> +++ b/gdb/inferior.c
>> @@ -33,6 +33,7 @@
>>  #include "cli/cli-utils.h"
>>  #include "arch-utils.h"
>>  #include "target-descriptions.h"
>> +#include "target-connection.h"
>>  #include "readline/tilde.h"
>>  #include "progspace-and-thread.h"
>>  #include "gdbsupport/buildargv.h"
>> @@ -482,21 +483,13 @@ static std::string
>>  uiout_field_connection (process_stratum_target *proc_target)
>>  {
>>    if (proc_target == NULL)
>> -    {
>> -      return {};
>> -    }
>> -  else if (proc_target->connection_string () != NULL)
>> -    {
>> -      return string_printf ("%d (%s %s)",
>> -			    proc_target->connection_number,
>> -			    proc_target->shortname (),
>> -			    proc_target->connection_string ());
>> -    }
>> +    return {};
>>    else
>>      {
>> -      return string_printf ("%d (%s)",
>> -			    proc_target->connection_number,
>> -			    proc_target->shortname ());
>> +      std::string conn_str
>> +	= make_target_connection_string (proc_target).c_str ();
>
> I think you can remove the .c_str here.
>
>> diff --git a/gdb/target-connection.c b/gdb/target-connection.c
>> index d1da6a2d7b9..d88b9c8f563 100644
>> --- a/gdb/target-connection.c
>> +++ b/gdb/target-connection.c
>> @@ -91,10 +91,7 @@ print_connection (struct ui_out *uiout, const char *requested_connections)
>>  
>>        process_stratum_target *t = it.second;
>>  
>> -      size_t l = strlen (t->shortname ());
>> -      if (t->connection_string () != NULL)
>> -	l += 1 + strlen (t->connection_string ());
>> -
>> +      size_t l = strlen (make_target_connection_string (t).c_str ());
>
> I think you can use std::string::length here.

Thanks.

Normally I'd just push the fixes for this as obvious.  But as that's
what got me into this mess in the first place, I figure I should post
the fixes here first :)

I'll merge these tomorrow unless I hear any complaints.

Thanks,
Andrew

---

commit c06914cdbc40a30919df4efc9c0135c0694b5bc0
Author: Andrew Burgess <aburgess@redhat.com>
Date:   Thu Dec 15 16:50:57 2022 +0000

    gdb: clean up some inefficient std::string usage
    
    This commit:
    
      commit 53cf95c3389a3ecd97276d322e4a60fe3396a201
      Date:   Wed Dec 14 14:17:44 2022 +0000
    
          gdb: make more use of make_target_connection_string
    
    Introduced a couple of inefficient uses of std::string, both of which
    are fixed in this commit.
    
    There should be no user visible changes after this commit.

diff --git a/gdb/inferior.c b/gdb/inferior.c
index 3d2bce9df7b..928305fc79d 100644
--- a/gdb/inferior.c
+++ b/gdb/inferior.c
@@ -486,8 +486,7 @@ uiout_field_connection (process_stratum_target *proc_target)
     return {};
   else
     {
-      std::string conn_str
-	= make_target_connection_string (proc_target).c_str ();
+      std::string conn_str = make_target_connection_string (proc_target);
       return string_printf ("%d (%s)", proc_target->connection_number,
 			    conn_str.c_str ());
     }
diff --git a/gdb/target-connection.c b/gdb/target-connection.c
index d88b9c8f563..55818cf28dc 100644
--- a/gdb/target-connection.c
+++ b/gdb/target-connection.c
@@ -91,7 +91,7 @@ print_connection (struct ui_out *uiout, const char *requested_connections)
 
       process_stratum_target *t = it.second;
 
-      size_t l = strlen (make_target_connection_string (t).c_str ());
+      size_t l = make_target_connection_string (t).length ();
       if (l > what_len)
 	what_len = l;
     }


  reply	other threads:[~2022-12-15 16:56 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-15 12:53 Andrew Burgess
2022-12-15 12:58 ` Simon Marchi
2022-12-15 16:54   ` Andrew Burgess [this message]
2022-12-15 17:04     ` Simon Marchi
2022-12-16 13:31       ` Andrew Burgess

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87o7s4zjyq.fsf@redhat.com \
    --to=aburgess@redhat.com \
    --cc=gdb-patches@sourceware.org \
    --cc=simark@simark.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).