| Index: chrome/browser/chromeos/login/version_info_updater.cc
|
| diff --git a/chrome/browser/chromeos/login/version_info_updater.cc b/chrome/browser/chromeos/login/version_info_updater.cc
|
| index 84ff2ce3dba8f6e4ef39829ce28d6d30e1644118..6b51e5f2a8d65ced569616a1ea19d7ce6d7e7cb5 100644
|
| --- a/chrome/browser/chromeos/login/version_info_updater.cc
|
| +++ b/chrome/browser/chromeos/login/version_info_updater.cc
|
| @@ -13,7 +13,6 @@
|
| #include "base/strings/stringprintf.h"
|
| #include "base/strings/utf_string_conversions.h"
|
| #include "chrome/browser/browser_process.h"
|
| -#include "chrome/browser/chrome_notification_types.h"
|
| #include "chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h"
|
| #include "chrome/browser/chromeos/settings/cros_settings.h"
|
| #include "chrome/browser/chromeos/settings/cros_settings_names.h"
|
| @@ -53,9 +52,6 @@ VersionInfoUpdater::~VersionInfoUpdater() {
|
| GetDeviceCloudPolicyManager();
|
| if (policy_manager)
|
| policy_manager->core()->store()->RemoveObserver(this);
|
| -
|
| - for (unsigned int i = 0; i < arraysize(kReportingFlags); ++i)
|
| - cros_settings_->RemoveSettingsObserver(kReportingFlags[i], this);
|
| }
|
|
|
| void VersionInfoUpdater::StartUpdate(bool is_official_build) {
|
| @@ -82,8 +78,14 @@ void VersionInfoUpdater::StartUpdate(bool is_official_build) {
|
| }
|
|
|
| // Watch for changes to the reporting flags.
|
| - for (unsigned int i = 0; i < arraysize(kReportingFlags); ++i)
|
| - cros_settings_->AddSettingsObserver(kReportingFlags[i], this);
|
| + base::Closure callback =
|
| + base::Bind(&VersionInfoUpdater::UpdateEnterpriseInfo,
|
| + base::Unretained(this));
|
| + for (unsigned int i = 0; i < arraysize(kReportingFlags); ++i) {
|
| + subscriptions_.push_back(
|
| + cros_settings_->AddSettingsObserver(kReportingFlags[i],
|
| + callback).release());
|
| + }
|
| }
|
|
|
| void VersionInfoUpdater::UpdateVersionLabel() {
|
| @@ -134,14 +136,4 @@ void VersionInfoUpdater::OnStoreError(policy::CloudPolicyStore* store) {
|
| UpdateEnterpriseInfo();
|
| }
|
|
|
| -void VersionInfoUpdater::Observe(
|
| - int type,
|
| - const content::NotificationSource& source,
|
| - const content::NotificationDetails& details) {
|
| - if (type == chrome::NOTIFICATION_SYSTEM_SETTING_CHANGED)
|
| - UpdateEnterpriseInfo();
|
| - else
|
| - NOTREACHED();
|
| -}
|
| -
|
| } // namespace chromeos
|
|
|