Make the setting for "target.process.thread.step-avoid-regexp" work for inlined functions, not just concrete top level functions.
git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160151 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Target/ThreadPlanStepInRange.cpp b/source/Target/ThreadPlanStepInRange.cpp
index 4fd8254..725d48d 100644
--- a/source/Target/ThreadPlanStepInRange.cpp
+++ b/source/Target/ThreadPlanStepInRange.cpp
@@ -242,13 +242,12 @@
if (avoid_regexp_to_use != NULL)
{
- SymbolContext sc = frame->GetSymbolContext(eSymbolContextSymbol);
+ SymbolContext sc = frame->GetSymbolContext(eSymbolContextFunction|eSymbolContextBlock|eSymbolContextSymbol);
if (sc.symbol != NULL)
{
- const char *unnamed_symbol = "<UNKNOWN>";
- const char *sym_name = sc.symbol->GetMangled().GetName().AsCString(unnamed_symbol);
- if (strcmp (sym_name, unnamed_symbol) != 0)
- return avoid_regexp_to_use->Execute(sym_name);
+ const char *frame_function_name = sc.GetFunctionName().GetCString();
+ if (frame_function_name)
+ return avoid_regexp_to_use->Execute(frame_function_name);
}
}
return false;