diff options
author | Sean Callanan <scallanan@apple.com> | 2012-03-13 16:34:56 +0000 |
---|---|---|
committer | Sean Callanan <scallanan@apple.com> | 2012-03-13 16:34:56 +0000 |
commit | 632d2f729d749f0376c4d3429e5572c8078acfb8 (patch) | |
tree | 0d96f7e52c95bbbf1a2ef2ea78262b0ee7cf34b3 /lldb/source/Target/ThreadPlanStepOut.cpp | |
parent | f0b7595e080b8cc1f8aa58eb9690412c7439aabe (diff) | |
download | bcm5719-llvm-632d2f729d749f0376c4d3429e5572c8078acfb8.tar.gz bcm5719-llvm-632d2f729d749f0376c4d3429e5572c8078acfb8.zip |
Hardened the step-out plan in case it receives
bad stack IDs.
llvm-svn: 152630
Diffstat (limited to 'lldb/source/Target/ThreadPlanStepOut.cpp')
-rw-r--r-- | lldb/source/Target/ThreadPlanStepOut.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lldb/source/Target/ThreadPlanStepOut.cpp b/lldb/source/Target/ThreadPlanStepOut.cpp index 1b2f751f182..58507a80e60 100644 --- a/lldb/source/Target/ThreadPlanStepOut.cpp +++ b/lldb/source/Target/ThreadPlanStepOut.cpp @@ -57,6 +57,9 @@ ThreadPlanStepOut::ThreadPlanStepOut StackFrameSP return_frame_sp (m_thread.GetStackFrameAtIndex(frame_idx + 1)); StackFrameSP immediate_return_from_sp (m_thread.GetStackFrameAtIndex (frame_idx)); + if (!return_frame_sp || !immediate_return_from_sp) + return; // we can't do anything here. ValidatePlan() will return false. + m_step_out_to_id = return_frame_sp->GetStackID(); m_immediate_step_from_id = immediate_return_from_sp->GetStackID(); |