================
@@ -766,6 +768,12 @@ class CommandInterpreter : public Broadcaster,
   CommandUsageMap m_command_usages;
 
   StreamString m_transcript_stream;
+
+  /// Contains a list of handled commands, output and error. Each element in
+  /// the list is a dictionary with three keys: "command" (string), "output"
+  /// (list of strings) and optionally "error" (list of strings). Each string
+  /// in "output" and "error" is a line (without EOL characters).
+  StructuredData::ArraySP m_transcript;
----------------
clayborg wrote:

This shouldn't be a shared pointer, we don't want to hand out references to 
this structured data across the API boundary because it can be accessed by the 
caller and also be updated by new commands coming in. This should be a 
`StructuredData::Array` object and we should copy it when we hand it out across 
the API boundary.

https://github.com/llvm/llvm-project/pull/90703
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to