[llvm-branch-commits] [lldb] 19d7614 - Revert "Revert "[lldb] Make sure the process is stopped when computing the sy…"
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Fri Apr 11 16:56:55 PDT 2025
Author: Jonas Devlieghere
Date: 2025-04-11T16:56:53-07:00
New Revision: 19d761478bdad5615e3f3c7f4a1b71c1c698725b
URL: https://github.com/llvm/llvm-project/commit/19d761478bdad5615e3f3c7f4a1b71c1c698725b
DIFF: https://github.com/llvm/llvm-project/commit/19d761478bdad5615e3f3c7f4a1b71c1c698725b.diff
LOG: Revert "Revert "[lldb] Make sure the process is stopped when computing the sy…"
This reverts commit 179d30f8c3fddd3c85056fd2b8e877a4a8513158.
Added:
Modified:
lldb/source/Core/Statusline.cpp
Removed:
################################################################################
diff --git a/lldb/source/Core/Statusline.cpp b/lldb/source/Core/Statusline.cpp
index ed5308ef53eb0..e14691e2538a2 100644
--- a/lldb/source/Core/Statusline.cpp
+++ b/lldb/source/Core/Statusline.cpp
@@ -12,6 +12,7 @@
#include "lldb/Host/StreamFile.h"
#include "lldb/Interpreter/CommandInterpreter.h"
#include "lldb/Symbol/SymbolContext.h"
+#include "lldb/Target/Process.h"
#include "lldb/Target/StackFrame.h"
#include "lldb/Utility/AnsiTerminal.h"
#include "lldb/Utility/StreamString.h"
@@ -134,8 +135,15 @@ void Statusline::Redraw(bool update) {
exe_ctx.SetTargetPtr(&m_debugger.GetSelectedOrDummyTarget());
SymbolContext symbol_ctx;
- if (auto frame_sp = exe_ctx.GetFrameSP())
- symbol_ctx = frame_sp->GetSymbolContext(eSymbolContextEverything);
+ if (ProcessSP process_sp = exe_ctx.GetProcessSP()) {
+ // Check if the process is stopped, and if it is, make sure it remains
+ // stopped until we've computed the symbol context.
+ Process::StopLocker stop_locker;
+ if (stop_locker.TryLock(&process_sp->GetRunLock())) {
+ if (auto frame_sp = exe_ctx.GetFrameSP())
+ symbol_ctx = frame_sp->GetSymbolContext(eSymbolContextEverything);
+ }
+ }
StreamString stream;
if (auto *format = m_debugger.GetStatuslineFormat())
More information about the llvm-branch-commits
mailing list