diff options
author | dpolukhin@chromium.org <dpolukhin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-16 10:45:07 +0000 |
---|---|---|
committer | dpolukhin@chromium.org <dpolukhin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-16 10:45:07 +0000 |
commit | d356d7e1e4cba3c8a1e358d912921c65dbb0942a (patch) | |
tree | 476cabad9f75870d5b4f8c2689ee0f711414977d /chrome/browser/chromeos/customization_document.cc | |
parent | 6ad3bb1b5e5638f2f48e993d76658cb8bd97807b (diff) | |
download | chromium_src-d356d7e1e4cba3c8a1e358d912921c65dbb0942a.zip chromium_src-d356d7e1e4cba3c8a1e358d912921c65dbb0942a.tar.gz chromium_src-d356d7e1e4cba3c8a1e358d912921c65dbb0942a.tar.bz2 |
Apply VPD customization even if startup customization manifest is missing.
BUG=chrome-os-partner:5116
TEST=manual
Review URL: http://codereview.chromium.org/7659009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96914 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos/customization_document.cc')
-rw-r--r-- | chrome/browser/chromeos/customization_document.cc | 68 |
1 files changed, 34 insertions, 34 deletions
diff --git a/chrome/browser/chromeos/customization_document.cc b/chrome/browser/chromeos/customization_document.cc index cb6a92e..4f944e6 100644 --- a/chrome/browser/chromeos/customization_document.cc +++ b/chrome/browser/chromeos/customization_document.cc @@ -166,46 +166,46 @@ StartupCustomizationDocument* StartupCustomizationDocument::GetInstance() { void StartupCustomizationDocument::Init( chromeos::system::StatisticsProvider* statistics_provider) { - if (!IsReady()) - return; - - root_->GetString(kInitialLocaleAttr, &initial_locale_); - root_->GetString(kInitialTimezoneAttr, &initial_timezone_); - root_->GetString(kKeyboardLayoutAttr, &keyboard_layout_); - root_->GetString(kRegistrationUrlAttr, ®istration_url_); - - std::string hwid; - if (statistics_provider->GetMachineStatistic(kHardwareClass, &hwid)) { - ListValue* hwid_list = NULL; - if (root_->GetList(kHwidMapAttr, &hwid_list)) { - for (size_t i = 0; i < hwid_list->GetSize(); ++i) { - DictionaryValue* hwid_dictionary = NULL; - std::string hwid_mask; - if (hwid_list->GetDictionary(i, &hwid_dictionary) && - hwid_dictionary->GetString(kHwidMaskAttr, &hwid_mask)) { - if (MatchPattern(hwid, hwid_mask)) { - // If HWID for this machine matches some mask, use HWID specific - // settings. - std::string result; - if (hwid_dictionary->GetString(kInitialLocaleAttr, &result)) - initial_locale_ = result; - - if (hwid_dictionary->GetString(kInitialTimezoneAttr, &result)) - initial_timezone_ = result; - - if (hwid_dictionary->GetString(kKeyboardLayoutAttr, &result)) - keyboard_layout_ = result; + if (IsReady()) { + root_->GetString(kInitialLocaleAttr, &initial_locale_); + root_->GetString(kInitialTimezoneAttr, &initial_timezone_); + root_->GetString(kKeyboardLayoutAttr, &keyboard_layout_); + root_->GetString(kRegistrationUrlAttr, ®istration_url_); + + std::string hwid; + if (statistics_provider->GetMachineStatistic(kHardwareClass, &hwid)) { + ListValue* hwid_list = NULL; + if (root_->GetList(kHwidMapAttr, &hwid_list)) { + for (size_t i = 0; i < hwid_list->GetSize(); ++i) { + DictionaryValue* hwid_dictionary = NULL; + std::string hwid_mask; + if (hwid_list->GetDictionary(i, &hwid_dictionary) && + hwid_dictionary->GetString(kHwidMaskAttr, &hwid_mask)) { + if (MatchPattern(hwid, hwid_mask)) { + // If HWID for this machine matches some mask, use HWID specific + // settings. + std::string result; + if (hwid_dictionary->GetString(kInitialLocaleAttr, &result)) + initial_locale_ = result; + + if (hwid_dictionary->GetString(kInitialTimezoneAttr, &result)) + initial_timezone_ = result; + + if (hwid_dictionary->GetString(kKeyboardLayoutAttr, &result)) + keyboard_layout_ = result; + } + // Don't break here to allow other entires to be applied if match. + } else { + LOG(ERROR) << "Syntax error in customization manifest"; } - // Don't break here to allow other entires to be applied if match. - } else { - LOG(ERROR) << "Syntax error in customization manifest"; } } + } else { + LOG(ERROR) << "HWID is missing in machine statistics"; } - } else { - LOG(ERROR) << "HWID is missing in machine statistics"; } + // If manifest doesn't exist still apply values from VPD. statistics_provider->GetMachineStatistic(kInitialLocaleAttr, &initial_locale_); statistics_provider->GetMachineStatistic(kInitialTimezoneAttr, |