diff options
author | Jim Ingham <jingham@apple.com> | 2012-05-17 18:38:42 +0000 |
---|---|---|
committer | Jim Ingham <jingham@apple.com> | 2012-05-17 18:38:42 +0000 |
commit | 4a94c91077a17d790956a6bfcf2e171b00bae100 (patch) | |
tree | e7b27ef322b77138115d8d8c0b8ca86fa2affe6b /lldb/source/Breakpoint/BreakpointList.cpp | |
parent | 276a3e8c4635a0b5cb9a2252f3fd3e20b5c79cbb (diff) | |
download | bcm5719-llvm-4a94c91077a17d790956a6bfcf2e171b00bae100.tar.gz bcm5719-llvm-4a94c91077a17d790956a6bfcf2e171b00bae100.zip |
If we notice that a module with a given file path is replaced by another with the same file
path on rerunning, evict the old module from the target module list, inform the breakpoints
about this so they can do something intelligent as well.
rdar://problem/11273043
llvm-svn: 157008
Diffstat (limited to 'lldb/source/Breakpoint/BreakpointList.cpp')
-rw-r--r-- | lldb/source/Breakpoint/BreakpointList.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lldb/source/Breakpoint/BreakpointList.cpp b/lldb/source/Breakpoint/BreakpointList.cpp index e1aa2dbcb1e..6a91bd6731a 100644 --- a/lldb/source/Breakpoint/BreakpointList.cpp +++ b/lldb/source/Breakpoint/BreakpointList.cpp @@ -210,6 +210,17 @@ BreakpointList::UpdateBreakpoints (ModuleList& module_list, bool added) } void +BreakpointList::UpdateBreakpointsWhenModuleIsReplaced (ModuleSP old_module_sp, ModuleSP new_module_sp) +{ + Mutex::Locker locker(m_mutex); + bp_collection::iterator end = m_breakpoints.end(); + bp_collection::iterator pos; + for (pos = m_breakpoints.begin(); pos != end; ++pos) + (*pos)->ModuleReplaced (old_module_sp, new_module_sp); + +} + +void BreakpointList::ClearAllBreakpointSites () { Mutex::Locker locker(m_mutex); |