diff options
| -rw-r--r-- | lldb/source/Target/ThreadPlanStepOverRange.cpp | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/lldb/source/Target/ThreadPlanStepOverRange.cpp b/lldb/source/Target/ThreadPlanStepOverRange.cpp index 95dc2205bbf..0d02531efe8 100644 --- a/lldb/source/Target/ThreadPlanStepOverRange.cpp +++ b/lldb/source/Target/ThreadPlanStepOverRange.cpp @@ -118,6 +118,12 @@ ThreadPlanStepOverRange::IsEquivalentContext(const SymbolContext &context)          {              if (m_addr_context.function && m_addr_context.function == context.function)              { +                // It is okay to return to a different block of a straight function, we only have to  +                // be more careful if returning from one inlined block to another. +                if (m_addr_context.block->GetInlinedFunctionInfo() == nullptr +                    && context.block->GetInlinedFunctionInfo() == nullptr) +                    return true; +                                  if (m_addr_context.block && m_addr_context.block == context.block)                      return true;              }  | 

