summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/ThreadPlanStepInRange.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Target/ThreadPlanStepInRange.cpp')
-rw-r--r--lldb/source/Target/ThreadPlanStepInRange.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/lldb/source/Target/ThreadPlanStepInRange.cpp b/lldb/source/Target/ThreadPlanStepInRange.cpp
index 094a7dc418e..9fc3ad6360a 100644
--- a/lldb/source/Target/ThreadPlanStepInRange.cpp
+++ b/lldb/source/Target/ThreadPlanStepInRange.cpp
@@ -130,7 +130,9 @@ ThreadPlanStepInRange::ShouldStop (Event *event_ptr)
else
stop_others = false;
- if (FrameIsOlder())
+ FrameComparison frame_order = CompareCurrentFrameToStartFrame();
+
+ if (frame_order == eFrameCompareOlder)
{
// If we're in an older frame then we should stop.
//
@@ -146,7 +148,7 @@ ThreadPlanStepInRange::ShouldStop (Event *event_ptr)
}
}
- else if (!FrameIsYounger() && InSymbol())
+ else if (frame_order != eFrameCompareYounger && InSymbol())
{
// If we are not in a place we should step through, we're done.
// One tricky bit here is that some stubs don't push a frame, so we have to check
@@ -174,13 +176,13 @@ ThreadPlanStepInRange::ShouldStop (Event *event_ptr)
// If not, give the "should_stop" callback a chance to push a plan to get us out of here.
// But only do that if we actually have stepped in.
- if (!new_plan && FrameIsYounger())
+ if (!new_plan && frame_order == eFrameCompareYounger)
new_plan = InvokeShouldStopHereCallback();
// If we've stepped in and we are going to stop here, check to see if we were asked to
// run past the prologue, and if so do that.
- if (new_plan == NULL && FrameIsYounger() && m_step_past_prologue)
+ if (new_plan == NULL && frame_order == eFrameCompareYounger && m_step_past_prologue)
{
lldb::StackFrameSP curr_frame = m_thread.GetStackFrameAtIndex(0);
if (curr_frame)
OpenPOWER on IntegriCloud