summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/Process.cpp
diff options
context:
space:
mode:
authorJim Ingham <jingham@apple.com>2012-09-05 21:13:56 +0000
committerJim Ingham <jingham@apple.com>2012-09-05 21:13:56 +0000
commitcb95f348184363679c9c918b9d156922c0fe6437 (patch)
treea4e90428eb6bd084c37e8e9b0c9ed76f176cb779 /lldb/source/Target/Process.cpp
parentbad39e47cdaec2f6c8c9dfc3684e7b15fbdadc00 (diff)
downloadbcm5719-llvm-cb95f348184363679c9c918b9d156922c0fe6437.tar.gz
bcm5719-llvm-cb95f348184363679c9c918b9d156922c0fe6437.zip
If the ThreadList ShouldStop restarts the target, don't resume it again.
llvm-svn: 163245
Diffstat (limited to 'lldb/source/Target/Process.cpp')
-rw-r--r--lldb/source/Target/Process.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/lldb/source/Target/Process.cpp b/lldb/source/Target/Process.cpp
index b7cda542cbd..2de68183926 100644
--- a/lldb/source/Target/Process.cpp
+++ b/lldb/source/Target/Process.cpp
@@ -3283,6 +3283,9 @@ Process::ShouldBroadcastEvent (Event *event_ptr)
if (m_thread_list.ShouldStop (event_ptr) == false)
{
+ // ShouldStop may have restarted the target already. If so, don't
+ // resume it twice.
+ bool was_restarted = ProcessEventData::GetRestartedFromEvent (event_ptr);
switch (m_thread_list.ShouldReportStop (event_ptr))
{
case eVoteYes:
@@ -3296,7 +3299,8 @@ Process::ShouldBroadcastEvent (Event *event_ptr)
if (log)
log->Printf ("Process::ShouldBroadcastEvent (%p) Restarting process from state: %s", event_ptr, StateAsCString(state));
- PrivateResume ();
+ if (!was_restarted)
+ PrivateResume ();
}
else
{
OpenPOWER on IntegriCloud