Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(816)

Unified Diff: components/syncable_prefs/pref_model_associator.cc

Issue 2318303002: Remove stl_util's STLDeleteContainerPairSecondPointers. (Closed)
Patch Set: fix Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/syncable_prefs/pref_model_associator.cc
diff --git a/components/syncable_prefs/pref_model_associator.cc b/components/syncable_prefs/pref_model_associator.cc
index c43679f3921b21729779aed0a94e9703223efd6c..a2758de670f2589dd33cf51e5a80d8df4074a4a4 100644
--- a/components/syncable_prefs/pref_model_associator.cc
+++ b/components/syncable_prefs/pref_model_associator.cc
@@ -12,7 +12,6 @@
#include "base/location.h"
#include "base/logging.h"
#include "base/memory/ptr_util.h"
-#include "base/stl_util.h"
#include "base/strings/utf_string_conversions.h"
#include "base/values.h"
#include "components/prefs/pref_service.h"
@@ -70,8 +69,6 @@ PrefModelAssociator::~PrefModelAssociator() {
DCHECK(CalledOnValidThread());
pref_service_ = NULL;
- base::STLDeleteContainerPairSecondPointers(synced_pref_observers_.begin(),
- synced_pref_observers_.end());
synced_pref_observers_.clear();
}
@@ -442,21 +439,20 @@ bool PrefModelAssociator::IsPrefSynced(const std::string& name) const {
void PrefModelAssociator::AddSyncedPrefObserver(const std::string& name,
SyncedPrefObserver* observer) {
- SyncedPrefObserverList* observers = synced_pref_observers_[name];
- if (observers == NULL) {
- observers = new SyncedPrefObserverList;
- synced_pref_observers_[name] = observers;
- }
+ std::unique_ptr<SyncedPrefObserverList>& observers =
+ synced_pref_observers_[name];
+ if (!observers)
+ observers = base::MakeUnique<SyncedPrefObserverList>();
+
observers->AddObserver(observer);
}
void PrefModelAssociator::RemoveSyncedPrefObserver(const std::string& name,
SyncedPrefObserver* observer) {
- SyncedPrefObserverMap::iterator observer_iter =
- synced_pref_observers_.find(name);
+ auto observer_iter = synced_pref_observers_.find(name);
if (observer_iter == synced_pref_observers_.end())
return;
- SyncedPrefObserverList* observers = observer_iter->second;
+ SyncedPrefObserverList* observers = observer_iter->second.get();
observers->RemoveObserver(observer);
}
@@ -538,11 +534,10 @@ void PrefModelAssociator::SetPrefService(PrefServiceSyncable* pref_service) {
void PrefModelAssociator::NotifySyncedPrefObservers(const std::string& path,
bool from_sync) const {
- SyncedPrefObserverMap::const_iterator observer_iter =
- synced_pref_observers_.find(path);
+ auto observer_iter = synced_pref_observers_.find(path);
if (observer_iter == synced_pref_observers_.end())
return;
- SyncedPrefObserverList* observers = observer_iter->second;
+ SyncedPrefObserverList* observers = observer_iter->second.get();
FOR_EACH_OBSERVER(SyncedPrefObserver, *observers,
OnSyncedPrefChanged(path, from_sync));
}

Powered by Google App Engine
This is Rietveld 408576698