[lldb] Use std::string instead of llvm::Twine in GDBRemoteCommunicationClient
authorJonas Devlieghere <jonas@devlieghere.com>
Fri, 5 Nov 2021 20:18:06 +0000 (13:18 -0700)
committerJonas Devlieghere <jonas@devlieghere.com>
Fri, 5 Nov 2021 20:19:00 +0000 (13:19 -0700)
From the documentation:

  A Twine is not intended for use directly and should not be stored, its
  implementation relies on the ability to store pointers to temporary
  stack objects which may be deallocated at the end of a statement.
  Twines should only be used accepted as const references in arguments,
  when an API wishes to accept possibly-concatenated strings.

rdar://84799118

Differential revision: https://reviews.llvm.org/D113314

lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp

index 6fd5112..364a37a 100644 (file)
@@ -1109,9 +1109,8 @@ void GDBRemoteCommunicationClient::MaybeEnableCompression(
 
   if (avail_type != CompressionType::None) {
     StringExtractorGDBRemote response;
-    llvm::Twine packet = "QEnableCompression:type:" + avail_name + ";";
-    if (SendPacketAndWaitForResponse(packet.str(), response) !=
-        PacketResult::Success)
+    std::string packet = "QEnableCompression:type:" + avail_name.str() + ";";
+    if (SendPacketAndWaitForResponse(packet, response) != PacketResult::Success)
       return;
 
     if (response.IsOKResponse()) {