[Lldb-commits] [lldb] 81499ed - [NFC][lldb]Fix stack-use-after-free bugs in exit-callbacks. (#135763)

via lldb-commits lldb-commits at lists.llvm.org
Tue Apr 15 02:40:11 PDT 2025


Author: Vy Nguyen
Date: 2025-04-15T11:40:07+02:00
New Revision: 81499edb30665d377a680990ef3c5129f9b54261

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

LOG: [NFC][lldb]Fix stack-use-after-free bugs in exit-callbacks. (#135763)

Added: 
    

Modified: 
    lldb/source/Target/Process.cpp
    lldb/source/Target/Target.cpp

Removed: 
    


################################################################################
diff  --git a/lldb/source/Target/Process.cpp b/lldb/source/Target/Process.cpp
index 633f7488dc76a..73557eb767c72 100644
--- a/lldb/source/Target/Process.cpp
+++ b/lldb/source/Target/Process.cpp
@@ -1047,10 +1047,11 @@ bool Process::SetExitStatus(int status, llvm::StringRef exit_string) {
     info->exit_desc = {status, exit_string.str()};
   });
 
-  helper.DispatchOnExit([&](telemetry::ProcessExitInfo *info) {
-    info->module_uuid = module_uuid;
-    info->pid = m_pid;
-  });
+  helper.DispatchOnExit(
+      [module_uuid, pid = m_pid](telemetry::ProcessExitInfo *info) {
+        info->module_uuid = module_uuid;
+        info->pid = pid;
+      });
 
   m_exit_status = status;
   if (!exit_string.empty())

diff  --git a/lldb/source/Target/Target.cpp b/lldb/source/Target/Target.cpp
index 42b1561fb2993..b6186b76d6236 100644
--- a/lldb/source/Target/Target.cpp
+++ b/lldb/source/Target/Target.cpp
@@ -1578,7 +1578,7 @@ void Target::SetExecutableModule(ModuleSP &executable_sp,
       info->is_start_entry = true;
     });
 
-    helper.DispatchOnExit([&](telemetry::ExecutableModuleInfo *info) {
+    helper.DispatchOnExit([&, pid](telemetry::ExecutableModuleInfo *info) {
       info->exec_mod = executable_sp;
       info->uuid = executable_sp->GetUUID();
       info->pid = pid;


        


More information about the lldb-commits mailing list