summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-17 15:25:35 +0000
committerbauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-17 15:25:35 +0000
commit291da036e31b12b7b1bf5b7cd1058949ee8e5521 (patch)
tree630aea6debca62518c35a803dac4ea0b9b626e00
parent2f48b8d97af25a2403f9b36b87ecc1841ab2d1f9 (diff)
downloadchromium_src-291da036e31b12b7b1bf5b7cd1058949ee8e5521.zip
chromium_src-291da036e31b12b7b1bf5b7cd1058949ee8e5521.tar.gz
chromium_src-291da036e31b12b7b1bf5b7cd1058949ee8e5521.tar.bz2
Don't return content settings from DefaultProvider for non-empty resource identifiers.
BUG=100273 TEST=content setting exceptions work Review URL: http://codereview.chromium.org/8274033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105809 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/content_settings/content_settings_default_provider.cc8
-rw-r--r--chrome/browser/content_settings/host_content_settings_map_unittest.cc8
-rw-r--r--chrome/test/functional/PYAUTO_TESTS2
3 files changed, 11 insertions, 7 deletions
diff --git a/chrome/browser/content_settings/content_settings_default_provider.cc b/chrome/browser/content_settings/content_settings_default_provider.cc
index c6d5922..d7feea5 100644
--- a/chrome/browser/content_settings/content_settings_default_provider.cc
+++ b/chrome/browser/content_settings/content_settings_default_provider.cc
@@ -189,8 +189,12 @@ RuleIterator* DefaultProvider::GetRuleIterator(
const ResourceIdentifier& resource_identifier,
bool incognito) const {
base::AutoLock lock(lock_);
- return new DefaultRuleIterator(
- default_content_settings_.settings[content_type]);
+ if (resource_identifier.empty()) {
+ return new DefaultRuleIterator(
+ default_content_settings_.settings[content_type]);
+ } else {
+ return new EmptyRuleIterator();
+ }
}
void DefaultProvider::ClearAllContentSettingsRules(
diff --git a/chrome/browser/content_settings/host_content_settings_map_unittest.cc b/chrome/browser/content_settings/host_content_settings_map_unittest.cc
index 610c1b7..5f3dbe5 100644
--- a/chrome/browser/content_settings/host_content_settings_map_unittest.cc
+++ b/chrome/browser/content_settings/host_content_settings_map_unittest.cc
@@ -803,7 +803,7 @@ TEST_F(HostContentSettingsMapTest, ResourceIdentifier) {
std::string resource1("someplugin");
std::string resource2("otherplugin");
- // If resource content settings are enabled GetContentSettings should return
+ // If resource content settings are enabled, GetContentSettings should return
// the default values for all plugins
ContentSetting default_plugin_setting =
host_content_settings_map->GetDefaultContentSetting(
@@ -813,7 +813,9 @@ TEST_F(HostContentSettingsMapTest, ResourceIdentifier) {
EXPECT_EQ(default_plugin_setting,
settings.settings[CONTENT_SETTINGS_TYPE_PLUGINS]);
- EXPECT_EQ(CONTENT_SETTING_ALLOW,
+ // If no resource-specific content settings are defined, the setting should be
+ // DEFAULT.
+ EXPECT_EQ(CONTENT_SETTING_DEFAULT,
host_content_settings_map->GetContentSetting(
host, host, CONTENT_SETTINGS_TYPE_PLUGINS, resource1));
@@ -826,7 +828,7 @@ TEST_F(HostContentSettingsMapTest, ResourceIdentifier) {
EXPECT_EQ(CONTENT_SETTING_BLOCK,
host_content_settings_map->GetContentSetting(
host, host, CONTENT_SETTINGS_TYPE_PLUGINS, resource1));
- EXPECT_EQ(CONTENT_SETTING_ALLOW,
+ EXPECT_EQ(CONTENT_SETTING_DEFAULT,
host_content_settings_map->GetContentSetting(
host, host, CONTENT_SETTINGS_TYPE_PLUGINS, resource2));
}
diff --git a/chrome/test/functional/PYAUTO_TESTS b/chrome/test/functional/PYAUTO_TESTS
index 1294711..d6623be 100644
--- a/chrome/test/functional/PYAUTO_TESTS
+++ b/chrome/test/functional/PYAUTO_TESTS
@@ -200,8 +200,6 @@
'-omnibox.OmniboxTest.testContentHistory',
# Keychain popups make autofill/password tests difficult: crbug.com/49378
'-passwords',
- # Plugin block exception broken. crbug.com/100273
- '-plugins.PluginsTest.testBlockPluginException',
# crbug.com/97140
'-plugins.PluginsTest.testDisableEnableAllPlugins',
# crbug.com/79263