bool BreakpointLocationList::RemoveLocation( const lldb::BreakpointLocationSP &bp_loc_sp) { if (bp_loc_sp) { std::lock_guard<std::recursive_mutex> guard(m_mutex); m_address_to_location.erase(bp_loc_sp->GetAddress()); size_t num_locations = m_locations.size(); for (size_t idx = 0; idx < num_locations; idx++) { if (m_locations[idx].get() == bp_loc_sp.get()) { RemoveLocationByIndex(idx); return true; } } } return false; }
bool BreakpointLocationList::RemoveLocation (const lldb::BreakpointLocationSP &bp_loc_sp) { if (bp_loc_sp) { Mutex::Locker locker (m_mutex); m_address_to_location.erase (bp_loc_sp->GetAddress()); collection::iterator pos, end = m_locations.end(); for (pos = m_locations.begin(); pos != end; ++pos) { if ((*pos).get() == bp_loc_sp.get()) { m_locations.erase (pos); return true; } } } return false; }