summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/Process.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Target/Process.cpp')
-rw-r--r--lldb/source/Target/Process.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/lldb/source/Target/Process.cpp b/lldb/source/Target/Process.cpp
index 3d1065450e8..b5a37941768 100644
--- a/lldb/source/Target/Process.cpp
+++ b/lldb/source/Target/Process.cpp
@@ -3634,7 +3634,10 @@ Error
Process::StopForDestroyOrDetach(lldb::EventSP &exit_event_sp)
{
Error error;
- if (m_public_state.GetValue() == eStateRunning)
+
+ // Check both the public & private states here. If we're hung evaluating an expression, for instance, then
+ // the public state will be stopped, but we still need to interrupt.
+ if (m_public_state.GetValue() == eStateRunning || m_private_state.GetValue() == eStateRunning)
{
Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_PROCESS));
if (log)
OpenPOWER on IntegriCloud