[Lldb-commits] [lldb] [lldb][Windows] Clear stale thread stop info on resume (PR #201595)
Charles Zablit via lldb-commits
lldb-commits at lists.llvm.org
Thu Jun 4 07:12:09 PDT 2026
https://github.com/charles-zablit created https://github.com/llvm/llvm-project/pull/201595
Currently, a thread that didn't participate in the next stop carries its old reason across a continue.
This patch mirrors the `NativeThreadLinux::Resume` implementation by resetting `m_stop` and clearing `m_stop_description`.
When running the test suite with `LLDB_USE_LLDB_SERVER=1`, this fixes:
- `TestThreadSpecificBreakpoint.py`
- `TestIgnoreSuspendedThread.py`
- `TestDAP_threads.py`
>From b974300cb10b830cd33829ef29fa8a500adc9077 Mon Sep 17 00:00:00 2001
From: Charles Zablit <c_zablit at apple.com>
Date: Thu, 4 Jun 2026 15:01:34 +0100
Subject: [PATCH] [lldb][Windows] Clear stale thread stop info on resume
---
.../Plugins/Process/Windows/Common/NativeThreadWindows.cpp | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/lldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.cpp b/lldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.cpp
index da0fe0d891d6f..f021d435efa9b 100644
--- a/lldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.cpp
+++ b/lldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.cpp
@@ -81,6 +81,11 @@ Status NativeThreadWindows::DoResume(lldb::StateType resume_state) {
}
if (resume_state == eStateStepping || resume_state == eStateRunning) {
+ // Clear any stop info left over from a previous stop.
+ m_stop_info = ThreadStopInfo();
+ m_stop_info.reason = lldb::eStopReasonNone;
+ m_stop_description.clear();
+
DWORD previous_suspend_count = 0;
HANDLE thread_handle = m_host_thread.GetNativeThread().GetSystemHandle();
do {
More information about the lldb-commits
mailing list