aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Target/ThreadPlanStepInRange.cpp
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2012-07-13 00:19:40 +0000
committerGreg Clayton <gclayton@apple.com>2012-07-13 00:19:40 +0000
commit4592cbc47393ee34fce21e1c65d0e524cc4823b6 (patch)
treef4b665629364437d49703e899373d89cb11f620f /lldb/source/Target/ThreadPlanStepInRange.cpp
parentd59fd74eec765cba98e815b7bf900fee0ce1ce44 (diff)
downloadllvm-4592cbc47393ee34fce21e1c65d0e524cc4823b6.zip
llvm-4592cbc47393ee34fce21e1c65d0e524cc4823b6.tar.gz
llvm-4592cbc47393ee34fce21e1c65d0e524cc4823b6.tar.bz2
Make the setting for "target.process.thread.step-avoid-regexp" work for inlined functions, not just concrete top level functions.
llvm-svn: 160151
Diffstat (limited to 'lldb/source/Target/ThreadPlanStepInRange.cpp')
-rw-r--r--lldb/source/Target/ThreadPlanStepInRange.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/lldb/source/Target/ThreadPlanStepInRange.cpp b/lldb/source/Target/ThreadPlanStepInRange.cpp
index 4fd8254..725d48d 100644
--- a/lldb/source/Target/ThreadPlanStepInRange.cpp
+++ b/lldb/source/Target/ThreadPlanStepInRange.cpp
@@ -242,13 +242,12 @@ ThreadPlanStepInRange::FrameMatchesAvoidRegexp ()
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;