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

Unified Diff: components/policy/core/common/policy_service_impl.cc

Issue 830193002: Using PolicyServiceWatcher instead of PolicyWatcherLinux/Win/Mac. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed building for Chrome OS. Created 5 years, 12 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/policy/core/common/policy_service_impl.cc
diff --git a/components/policy/core/common/policy_service_impl.cc b/components/policy/core/common/policy_service_impl.cc
index d515d1923da2877cd06551d7f7d16b9ca7bfe9e4..9d022b05fd1e42dd00e694524d53b6c4ba74682c 100644
--- a/components/policy/core/common/policy_service_impl.cc
+++ b/components/policy/core/common/policy_service_impl.cc
@@ -88,6 +88,7 @@ PolicyServiceImpl::PolicyServiceImpl(const Providers& providers)
}
PolicyServiceImpl::~PolicyServiceImpl() {
+ DCHECK(thread_checker_.CalledOnValidThread());
for (Iterator it = providers_.begin(); it != providers_.end(); ++it)
(*it)->RemoveObserver(this);
STLDeleteValues(&observers_);
@@ -95,6 +96,7 @@ PolicyServiceImpl::~PolicyServiceImpl() {
void PolicyServiceImpl::AddObserver(PolicyDomain domain,
PolicyService::Observer* observer) {
+ DCHECK(thread_checker_.CalledOnValidThread());
Observers*& list = observers_[domain];
if (!list)
list = new Observers();
@@ -103,6 +105,7 @@ void PolicyServiceImpl::AddObserver(PolicyDomain domain,
void PolicyServiceImpl::RemoveObserver(PolicyDomain domain,
PolicyService::Observer* observer) {
+ DCHECK(thread_checker_.CalledOnValidThread());
ObserverMap::iterator it = observers_.find(domain);
if (it == observers_.end()) {
NOTREACHED();
@@ -170,6 +173,7 @@ void PolicyServiceImpl::NotifyNamespaceUpdated(
const PolicyNamespace& ns,
const PolicyMap& previous,
const PolicyMap& current) {
+ DCHECK(thread_checker_.CalledOnValidThread());
ObserverMap::iterator iterator = observers_.find(ns.domain);
if (iterator != observers_.end()) {
FOR_EACH_OBSERVER(PolicyService::Observer,
@@ -231,6 +235,8 @@ void PolicyServiceImpl::MergeAndTriggerUpdates() {
}
void PolicyServiceImpl::CheckInitializationComplete() {
+ DCHECK(thread_checker_.CalledOnValidThread());
+
// Check if all the providers just became initialized for each domain; if so,
// notify that domain's observers.
for (int domain = 0; domain < POLICY_DOMAIN_SIZE; ++domain) {

Powered by Google App Engine
This is Rietveld 408576698