Index: chrome/browser/managed_mode/managed_user_service.cc |
diff --git a/chrome/browser/managed_mode/managed_user_service.cc b/chrome/browser/managed_mode/managed_user_service.cc |
index 7aeed2933fd3493745f160122dd5902f3666548b..f42f768bbf590086268c28cad62ae8dba4754ed7 100644 |
--- a/chrome/browser/managed_mode/managed_user_service.cc |
+++ b/chrome/browser/managed_mode/managed_user_service.cc |
@@ -277,6 +277,11 @@ void ManagedUserService::DidBlockNavigation( |
} |
} |
+void ManagedUserService::AddInitCallback( |
+ const base::Closure& callback) { |
+ init_callbacks_.push_back(callback); |
+} |
+ |
std::string ManagedUserService::GetDebugPolicyProviderName() const { |
// Save the string space in official builds. |
#ifdef NDEBUG |
@@ -596,6 +601,14 @@ void ManagedUserService::Init() { |
UpdateSiteLists(); |
UpdateManualHosts(); |
UpdateManualURLs(); |
+ |
+ // Call the callbacks to notify that the ManagedUserService has been |
+ // initialized. |
+ for (std::vector<base::Closure>::iterator it = init_callbacks_.begin(); |
+ it != init_callbacks_.end(); |
+ ++it) { |
+ it->Run(); |
+ } |
} |
void ManagedUserService::RegisterAndInitSync( |