summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/ThreadPlanStepInRange.cpp
diff options
context:
space:
mode:
authorJim Ingham <jingham@apple.com>2012-05-10 01:35:39 +0000
committerJim Ingham <jingham@apple.com>2012-05-10 01:35:39 +0000
commit18de2fdc5515fd319a837b509493488b73b564c2 (patch)
tree18ed39e61f10c8eef0ceeb979cf86605ae0b52d2 /lldb/source/Target/ThreadPlanStepInRange.cpp
parent5d133998513cb4d904be7a71434ad01ff28e0983 (diff)
downloadbcm5719-llvm-18de2fdc5515fd319a837b509493488b73b564c2.tar.gz
bcm5719-llvm-18de2fdc5515fd319a837b509493488b73b564c2.zip
If the ObjC Step Through Trampoline plan causes a target crash, properly propagate the error back to
the controlling plans so that they don't lose control. Also change "ThreadPlanStepThrough" to take the return StackID for its backstop breakpoint as an argument to the constructor rather than having it try to figure it out itself, since it might get it wrong whereas the caller always knows where it is coming from. rdar://problem/11402287 llvm-svn: 156529
Diffstat (limited to 'lldb/source/Target/ThreadPlanStepInRange.cpp')
-rw-r--r--lldb/source/Target/ThreadPlanStepInRange.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lldb/source/Target/ThreadPlanStepInRange.cpp b/lldb/source/Target/ThreadPlanStepInRange.cpp
index 0db23a114b8..4fd8254971b 100644
--- a/lldb/source/Target/ThreadPlanStepInRange.cpp
+++ b/lldb/source/Target/ThreadPlanStepInRange.cpp
@@ -104,7 +104,7 @@ ThreadPlanStepInRange::ShouldStop (Event *event_ptr)
// A caveat to this is if we think the frame is older but we're actually in a trampoline.
// I'm going to make the assumption that you wouldn't RETURN to a trampoline. So if we are
// in a trampoline we think the frame is older because the trampoline confused the backtracer.
- new_plan = m_thread.QueueThreadPlanForStepThrough (false, stop_others);
+ new_plan = m_thread.QueueThreadPlanForStepThrough (m_stack_id, false, stop_others);
if (new_plan == NULL)
return true;
else if (log)
@@ -140,7 +140,7 @@ ThreadPlanStepInRange::ShouldStop (Event *event_ptr)
// We may have set the plan up above in the FrameIsOlder section:
if (new_plan == NULL)
- new_plan = m_thread.QueueThreadPlanForStepThrough (false, stop_others);
+ new_plan = m_thread.QueueThreadPlanForStepThrough (m_stack_id, false, stop_others);
if (log)
{
OpenPOWER on IntegriCloud