| Index: chrome/browser/content_settings/content_settings_base_provider.cc
|
| diff --git a/chrome/browser/content_settings/content_settings_base_provider.cc b/chrome/browser/content_settings/content_settings_base_provider.cc
|
| index 6bc3d66b39e416f5c246911479e89b2886307dc7..b0e7ced8732e37d3b2f2567e228e3e34544f70b4 100644
|
| --- a/chrome/browser/content_settings/content_settings_base_provider.cc
|
| +++ b/chrome/browser/content_settings/content_settings_base_provider.cc
|
| @@ -72,18 +72,10 @@ ContentSetting BaseProvider::GetContentSetting(
|
| // Support for embedding_patterns is not implemented yet.
|
| DCHECK(requesting_url == embedding_url);
|
|
|
| - if (!RequiresResourceIdentifier(content_type))
|
| + if (!RequiresResourceIdentifier(content_type) ||
|
| + (RequiresResourceIdentifier(content_type) && resource_identifier.empty()))
|
| return GetNonDefaultContentSettings(requesting_url).settings[content_type];
|
|
|
| - if (RequiresResourceIdentifier(content_type) && resource_identifier.empty())
|
| - return CONTENT_SETTING_DEFAULT;
|
| -
|
| - // TODO(markusheintz) Remove this DCHECK.
|
| - if (CommandLine::ForCurrentProcess()->HasSwitch(
|
| - switches::kEnableResourceContentSettings)) {
|
| - DCHECK(!resource_identifier.empty());
|
| - }
|
| -
|
| // Resolve content settings with resource identifier.
|
| // 1. Check for pattern that exactly match the url/host
|
| // 1.1 In the content-settings-map
|
| @@ -150,8 +142,6 @@ void BaseProvider::GetAllContentSettingsRules(
|
| ContentSettingsType content_type,
|
| const ResourceIdentifier& resource_identifier,
|
| Rules* content_setting_rules) const {
|
| - DCHECK(RequiresResourceIdentifier(content_type) !=
|
| - resource_identifier.empty());
|
| DCHECK(content_setting_rules);
|
| content_setting_rules->clear();
|
|
|
| @@ -237,6 +227,19 @@ ContentSettings BaseProvider::GetNonDefaultContentSettings(
|
| return output;
|
| }
|
|
|
| +void BaseProvider::UpdateContentSettingsMap(
|
| + const ContentSettingsPattern& requesting_pattern,
|
| + const ContentSettingsPattern& embedding_pattern,
|
| + ContentSettingsType content_type,
|
| + const ResourceIdentifier& resource_identifier,
|
| + ContentSetting content_setting) {
|
| + std::string pattern_str(requesting_pattern.CanonicalizePattern());
|
| + HostContentSettings* content_settings_map = host_content_settings();
|
| + ExtendedContentSettings& extended_settings =
|
| + (*content_settings_map)[pattern_str];
|
| + extended_settings.content_settings.settings[content_type] = content_setting;
|
| +}
|
| +
|
| // static
|
| ContentSetting BaseProvider::ClickToPlayFixup(ContentSettingsType content_type,
|
| ContentSetting setting) {
|
|
|