[JSON] Don't wrap json::Array in a value (NFC)
authorJonas Devlieghere <jonas@devlieghere.com>
Thu, 3 Oct 2019 20:10:56 +0000 (20:10 +0000)
committerJonas Devlieghere <jonas@devlieghere.com>
Thu, 3 Oct 2019 20:10:56 +0000 (20:10 +0000)
There's no need to wrap the just-constructed json::Array in a
json::Value, we can just return that and pass ownership to the
raw_ostream.

llvm-svn: 373656

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

index 36fb178..ad1a39b 100644 (file)
@@ -493,7 +493,7 @@ static const char *GetStopReasonString(StopReason stop_reason) {
   return nullptr;
 }
 
-static llvm::Expected<json::Value>
+static llvm::Expected<json::Array>
 GetJSONThreadsInfo(NativeProcessProtocol &process, bool abridged) {
   Log *log(GetLogIfAnyCategoriesSet(LIBLLDB_LOG_PROCESS | LIBLLDB_LOG_THREAD));
 
@@ -660,12 +660,12 @@ GDBRemoteCommunicationServerLLGS::SendStopReplyPacketForThread(
     // thread otherwise this packet has all the info it needs.
     if (thread_index > 1) {
       const bool threads_with_valid_stop_info_only = true;
-      llvm::Expected<json::Value> threads_info = GetJSONThreadsInfo(
+      llvm::Expected<json::Array> threads_info = GetJSONThreadsInfo(
           *m_debugged_process_up, threads_with_valid_stop_info_only);
       if (threads_info) {
         response.PutCString("jstopinfo:");
         StreamString unescaped_response;
-        unescaped_response.AsRawOstream() << *threads_info;
+        unescaped_response.AsRawOstream() << std::move(*threads_info);
         response.PutStringAsRawHex8(unescaped_response.GetData());
         response.PutChar(';');
       } else {