diff options
| author | Jim Ingham <jingham@apple.com> | 2010-09-08 03:14:33 +0000 |
|---|---|---|
| committer | Jim Ingham <jingham@apple.com> | 2010-09-08 03:14:33 +0000 |
| commit | ee8aea101106d5db339ecda251fcd2546e6998d3 (patch) | |
| tree | 462ffda507d2ef0e9eaed7e3badac1c79d46e2ef /lldb/source/Target/ThreadPlanStepInRange.cpp | |
| parent | 83556c1a809650e0e9225996fbf670477f075f5f (diff) | |
| download | llvm-ee8aea101106d5db339ecda251fcd2546e6998d3.tar.gz llvm-ee8aea101106d5db339ecda251fcd2546e6998d3.tar.bz2 llvm-ee8aea101106d5db339ecda251fcd2546e6998d3.zip | |
Add a user settings controller to Thread. Then added a step-avoid-regexp setting
which controls whether to stop in a function matching the regexp.
llvm-svn: 113335
Diffstat (limited to 'lldb/source/Target/ThreadPlanStepInRange.cpp')
| -rw-r--r-- | lldb/source/Target/ThreadPlanStepInRange.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lldb/source/Target/ThreadPlanStepInRange.cpp b/lldb/source/Target/ThreadPlanStepInRange.cpp index b95b35e59245..ecdb6fa471db 100644 --- a/lldb/source/Target/ThreadPlanStepInRange.cpp +++ b/lldb/source/Target/ThreadPlanStepInRange.cpp @@ -156,7 +156,13 @@ ThreadPlanStepInRange::FrameMatchesAvoidRegexp () { StackFrame *frame = GetThread().GetStackFrameAtIndex(0).get(); - if (m_avoid_regexp_ap.get() != NULL) + RegularExpression *avoid_regexp_to_use; + + avoid_regexp_to_use = m_avoid_regexp_ap.get(); + if (avoid_regexp_to_use == NULL) + avoid_regexp_to_use = GetThread().GetSymbolsToAvoidRegexp(); + + if (avoid_regexp_to_use != NULL) { SymbolContext sc = frame->GetSymbolContext(eSymbolContextSymbol); if (sc.symbol != NULL) @@ -164,7 +170,7 @@ ThreadPlanStepInRange::FrameMatchesAvoidRegexp () const char *unnamed_symbol = "<UNKNOWN>"; const char *sym_name = sc.symbol->GetMangled().GetName().AsCString(unnamed_symbol); if (strcmp (sym_name, unnamed_symbol) != 0) - return m_avoid_regexp_ap->Execute(sym_name); + return avoid_regexp_to_use->Execute(sym_name); } } return false; |
