| Index: chrome/browser/renderer_host/plugin_info_message_filter.cc
|
| diff --git a/chrome/browser/renderer_host/plugin_info_message_filter.cc b/chrome/browser/renderer_host/plugin_info_message_filter.cc
|
| index 13bc7d68514a4c82643f31071ec884978e7187e8..379941c4f40e4356caa2d07a63d50bb5b9499638 100644
|
| --- a/chrome/browser/renderer_host/plugin_info_message_filter.cc
|
| +++ b/chrome/browser/renderer_host/plugin_info_message_filter.cc
|
| @@ -250,6 +250,7 @@ void PluginInfoMessageFilter::Context::GetPluginContentSetting(
|
|
|
| scoped_ptr<base::Value> value;
|
| content_settings::SettingInfo info;
|
| + bool uses_plugin_specific_setting = false;
|
| if (is_nacl_plugin) {
|
| value.reset(
|
| host_content_settings_map_->GetWebsiteSetting(
|
| @@ -260,7 +261,9 @@ void PluginInfoMessageFilter::Context::GetPluginContentSetting(
|
| host_content_settings_map_->GetWebsiteSetting(
|
| policy_url, plugin_url, CONTENT_SETTINGS_TYPE_PLUGINS, resource,
|
| &info));
|
| - if (!value.get()) {
|
| + if (value.get()) {
|
| + uses_plugin_specific_setting = true;
|
| + } else {
|
| value.reset(host_content_settings_map_->GetWebsiteSetting(
|
| policy_url, plugin_url, CONTENT_SETTINGS_TYPE_PLUGINS, std::string(),
|
| &info));
|
| @@ -268,6 +271,7 @@ void PluginInfoMessageFilter::Context::GetPluginContentSetting(
|
| }
|
| *setting = content_settings::ValueToContentSetting(value.get());
|
| *uses_default_content_setting =
|
| - (info.primary_pattern == ContentSettingsPattern::Wildcard() &&
|
| - info.secondary_pattern == ContentSettingsPattern::Wildcard());
|
| + !uses_plugin_specific_setting &&
|
| + info.primary_pattern == ContentSettingsPattern::Wildcard() &&
|
| + info.secondary_pattern == ContentSettingsPattern::Wildcard();
|
| }
|
|
|