Chromium Code Reviews| Index: chrome_frame/policy_settings.cc |
| =================================================================== |
| --- chrome_frame/policy_settings.cc (revision 216585) |
| +++ chrome_frame/policy_settings.cc (working copy) |
| @@ -84,8 +84,8 @@ |
| DCHECK(value == RENDERER_NOT_SPECIFIED || |
| value == RENDER_IN_HOST || |
| - value == RENDER_IN_CHROME_FRAME) << |
| - "invalid default renderer setting: " << value; |
| + value == RENDER_IN_CHROME_FRAME) |
| + << "invalid default renderer setting: " << value; |
| if (value != RENDER_IN_HOST && value != RENDER_IN_CHROME_FRAME) { |
| DVLOG(1) << "default renderer not specified via policy"; |
| @@ -105,6 +105,40 @@ |
| } |
| // static |
| +void PolicySettings::ReadMetadataCheckSettings( |
| + SkipMetadataCheck* skip_metadata_check) { |
| + DCHECK(skip_metadata_check); |
| + |
| + *skip_metadata_check = SKIP_METADATA_CHECK_NOT_SPECIFIED; |
| + |
| + base::win::RegKey config_key; |
| + DWORD value = SKIP_METADATA_CHECK_NOT_SPECIFIED; |
| + std::wstring settings_value( |
|
grt (UTC plus 2)
2013/08/13 03:19:31
you're getting PRESUBMIT grief here for using std:
|
| + ASCIIToWide(policy::key::kSkipMetadataCheck)); |
| + for (int i = 0; i < arraysize(kRootKeys); ++i) { |
| + if ((config_key.Open(kRootKeys[i], policy::kRegistryChromePolicyKey, |
| + KEY_READ) == ERROR_SUCCESS) && |
| + (config_key.ReadValueDW(settings_value.c_str(), |
| + &value) == ERROR_SUCCESS)) { |
| + break; |
| + } |
| + } |
| + |
| + DCHECK(value == SKIP_METADATA_CHECK_NOT_SPECIFIED || |
| + value == SKIP_METADATA_CHECK_NO || |
| + value == SKIP_METADATA_CHECK_YES) |
| + << "invalid skip metadata check setting: " << value; |
| + |
| + if (value != SKIP_METADATA_CHECK_NO && value != SKIP_METADATA_CHECK_YES) { |
| + DVLOG(1) << "metadata check not specified via policy"; |
| + } else { |
| + *skip_metadata_check = static_cast<SkipMetadataCheck>(value); |
| + DVLOG(1) << "SkipMetadata check as specified via policy: " |
| + << *skip_metadata_check; |
| + } |
| +} |
| + |
| +// static |
| void PolicySettings::ReadContentTypeSetting( |
| std::vector<std::wstring>* content_type_list) { |
| DCHECK(content_type_list); |
| @@ -156,6 +190,7 @@ |
| void PolicySettings::RefreshFromRegistry() { |
| RendererForUrl default_renderer; |
| + SkipMetadataCheck skip_metadata_check; |
| std::vector<std::wstring> renderer_exclusion_list; |
| std::vector<std::wstring> content_type_list; |
| std::wstring application_locale; |
| @@ -165,6 +200,7 @@ |
| // Read the latest settings from the registry |
| ReadUrlSettings(&default_renderer, &renderer_exclusion_list); |
| + ReadMetadataCheckSettings(&skip_metadata_check); |
| ReadContentTypeSetting(&content_type_list); |
| ReadStringSetting(policy::key::kApplicationLocaleValue, &application_locale); |
| ReadStringSetting(policy::key::kAdditionalLaunchParameters, |
| @@ -181,6 +217,7 @@ |
| using std::swap; |
| swap(default_renderer_, default_renderer); |
| + swap(skip_metadata_check_, skip_metadata_check); |
| swap(renderer_exclusion_list_, renderer_exclusion_list); |
| swap(content_type_list_, content_type_list); |
| swap(application_locale_, application_locale); |