diff options
| author | Johnny Chen <johnny.chen@apple.com> | 2010-09-03 22:35:47 +0000 |
|---|---|---|
| committer | Johnny Chen <johnny.chen@apple.com> | 2010-09-03 22:35:47 +0000 |
| commit | 725945d5680a38cd284de1a4e6780ced489590c4 (patch) | |
| tree | 8c7fbf91f62c61595df7ce1a48158aa3417319f7 /lldb/source/Core | |
| parent | 47bec3cb57cec41da562c38b83a4ef50f2d7fc46 (diff) | |
| download | bcm5719-llvm-725945d5680a38cd284de1a4e6780ced489590c4.tar.gz bcm5719-llvm-725945d5680a38cd284de1a4e6780ced489590c4.zip | |
Fixed an lldb infrastructure bug, where the debugger should reaaly update its
execution context only when the process is still alive. When running the test
suite, the debugger is launching and killing processes constantly.
This might be the cause of the test hang as reported in rdar://problem/8377854,
where the debugger was looping infinitely trying to update a supposedly stale
thread list.
llvm-svn: 113022
Diffstat (limited to 'lldb/source/Core')
| -rw-r--r-- | lldb/source/Core/Debugger.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lldb/source/Core/Debugger.cpp b/lldb/source/Core/Debugger.cpp index ee33ec53f49..1cdd7ad4d87 100644 --- a/lldb/source/Core/Debugger.cpp +++ b/lldb/source/Core/Debugger.cpp @@ -479,7 +479,7 @@ Debugger::UpdateExecutionContext (ExecutionContext *override_context) { m_exe_ctx.target = target_sp.get(); m_exe_ctx.process = target_sp->GetProcessSP().get(); - if (m_exe_ctx.process && m_exe_ctx.process->IsRunning() == false) + if (m_exe_ctx.process && m_exe_ctx.process->IsAlive() && !m_exe_ctx.process->IsRunning()) { m_exe_ctx.thread = m_exe_ctx.process->GetThreadList().GetSelectedThread().get(); if (m_exe_ctx.thread == NULL) |

