Chromium Code Reviews| 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 5cc5178ba7e0665e2d4dd3d7937032025c42045a..f29c9eee5bf48876b10644d1d0613c95cc05ec49 100644 |
| --- a/chrome/browser/renderer_host/plugin_info_message_filter.cc |
| +++ b/chrome/browser/renderer_host/plugin_info_message_filter.cc |
| @@ -158,30 +158,33 @@ void PluginInfoMessageFilter::Context::DecidePluginStatus( |
| &uses_default_content_setting); |
| DCHECK(plugin_setting != CONTENT_SETTING_DEFAULT); |
| +#if defined(ENABLE_PLUGIN_INSTALLATION) |
|
jochen (gone - plz use gerrit)
2012/05/18 18:48:18
when is this not defined? It seems a bit odd to no
Bernhard Bauer
2012/05/21 10:52:27
It's not defined on ChromeOS/Aura (and it should n
|
| + PluginInstaller::SecurityStatus plugin_status = |
| + PluginInstaller::SECURITY_STATUS_UP_TO_DATE; |
| + PluginInstaller* installer = |
| + plugin_finder->FindPluginWithIdentifier(group->identifier()); |
| + if (installer) |
| + plugin_status = installer->GetSecurityStatus(plugin); |
| // Check if the plug-in is outdated. |
| - if (group->IsVulnerable(plugin) && !allow_outdated_plugins_.GetValue()) { |
| + if (plugin_status == PluginInstaller::SECURITY_STATUS_OUT_OF_DATE && |
| + !allow_outdated_plugins_.GetValue()) { |
| if (allow_outdated_plugins_.IsManaged()) { |
| status->value = |
| ChromeViewHostMsg_GetPluginInfo_Status::kOutdatedDisallowed; |
| } else { |
| - status->value = |
| - ChromeViewHostMsg_GetPluginInfo_Status::kOutdatedBlocked; |
| + status->value = ChromeViewHostMsg_GetPluginInfo_Status::kOutdatedBlocked; |
| } |
| return; |
| } |
| -#if defined(ENABLE_PLUGIN_INSTALLATION) |
| // Check if the plug-in requires authorization. |
| - // TODO(bauerb): This should be a plain struct with the plug-in information. |
| - PluginInstaller* installer = |
| - plugin_finder->FindPluginWithIdentifier(group->identifier()); |
| - if (((installer && installer->requires_authorization()) || |
| + if ((plugin_status == |
| + PluginInstaller::SECURITY_STATUS_REQUIRES_AUTHORIZATION || |
| PluginService::GetInstance()->IsPluginUnstable(plugin.path)) && |
| !always_authorize_plugins_.GetValue() && |
| plugin_setting != CONTENT_SETTING_BLOCK && |
| uses_default_content_setting) { |
| - status->value = |
| - ChromeViewHostMsg_GetPluginInfo_Status::kUnauthorized; |
| + status->value = ChromeViewHostMsg_GetPluginInfo_Status::kUnauthorized; |
| return; |
| } |
| #endif |