Chromium Code Reviews| Index: chrome/browser/component_updater/pepper_flash_component_installer.cc |
| diff --git a/chrome/browser/component_updater/pepper_flash_component_installer.cc b/chrome/browser/component_updater/pepper_flash_component_installer.cc |
| index 2a84cefd2e3c34b059421bfcc45b81f8a629ed61..9e974858d9c62f1f8f25e36daa59007c13a2c43f 100644 |
| --- a/chrome/browser/component_updater/pepper_flash_component_installer.cc |
| +++ b/chrome/browser/component_updater/pepper_flash_component_installer.cc |
| @@ -28,6 +28,7 @@ |
| #include "build/build_config.h" |
| #include "chrome/browser/plugins/plugin_prefs.h" |
| #include "chrome/common/chrome_constants.h" |
| +#include "chrome/common/chrome_content_client.h" |
| #include "chrome/common/chrome_paths.h" |
| #include "chrome/common/chrome_switches.h" |
| #include "chrome/common/pepper_flash.h" |
| @@ -113,12 +114,21 @@ void RegisterPepperFlashWithChrome(const base::FilePath& path, |
| std::vector<content::WebPluginInfo> plugins; |
| PluginService::GetInstance()->GetInternalPlugins(&plugins); |
| + base::FilePath placeholder_path = |
| + base::FilePath::FromUTF8Unsafe(ChromeContentClient::kNotPresent) |
| for (const auto& plugin : plugins) { |
| if (!plugin.is_pepper_plugin() || plugin.name != web_plugin.name) |
| continue; |
| Version registered_version(base::UTF16ToUTF8(plugin.version)); |
| + if (plugin.path == placeholder_path) { |
|
Will Harris
2016/08/31 19:38:46
nit: move above line 123
waffles
2016/08/31 20:00:03
Done.
|
| + // This is the Flash placeholder; replace it regardless of version or |
| + // other considerations. |
| + PluginService::GetInstance()->UnregisterInternalPlugin(plugin.path); |
| + break; |
| + } |
| + |
| // If lower version, never register. |
| if (registered_version.IsValid() && |
| version.CompareTo(registered_version) < 0) { |