Author: David Spickett
Date: 2023-08-03T14:56:24Z
New Revision: bdeb35bda4381d3b416a92d797713b4b5a6a6c97

URL: 
https://github.com/llvm/llvm-project/commit/bdeb35bda4381d3b416a92d797713b4b5a6a6c97
DIFF: 
https://github.com/llvm/llvm-project/commit/bdeb35bda4381d3b416a92d797713b4b5a6a6c97.diff

LOG: [lldb][lldb-vscode] Fix nullptr dereference when JSON is not an object

Reviewed By: wallace

Differential Revision: https://reviews.llvm.org/D156977

Added: 
    

Modified: 
    lldb/tools/lldb-vscode/VSCode.cpp

Removed: 
    


################################################################################
diff  --git a/lldb/tools/lldb-vscode/VSCode.cpp 
b/lldb/tools/lldb-vscode/VSCode.cpp
index b6bf67c7bcfcfc..cad67c4273dd53 100644
--- a/lldb/tools/lldb-vscode/VSCode.cpp
+++ b/lldb/tools/lldb-vscode/VSCode.cpp
@@ -523,12 +523,13 @@ PacketStatus VSCode::GetNextObject(llvm::json::Object 
&object) {
     }
     return PacketStatus::JSONMalformed;
   }
-  object = *json_value->getAsObject();
-  if (!json_value->getAsObject()) {
+  llvm::json::Object *object_ptr = json_value->getAsObject();
+  if (!object_ptr) {
     if (log)
       *log << "error: json packet isn't a object" << std::endl;
     return PacketStatus::JSONNotObject;
   }
+  object = *object_ptr;
   return PacketStatus::Success;
 }
 


        
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to