Chromium Code Reviews| Index: chrome/browser/extensions/external_provider_impl.cc |
| diff --git a/chrome/browser/extensions/external_provider_impl.cc b/chrome/browser/extensions/external_provider_impl.cc |
| index 54d1cb794a966cc5a0c51459d5c9b50d3c1832ca..e27cef2707690ab99c5e5f283915c16c609f47ca 100644 |
| --- a/chrome/browser/extensions/external_provider_impl.cc |
| +++ b/chrome/browser/extensions/external_provider_impl.cc |
| @@ -225,9 +225,15 @@ void ExternalProviderImpl::SetPrefs(DictionaryValue* prefs) { |
| << external_version << "\"."; |
| continue; |
| } |
| - service_->OnExternalExtensionFileFound(extension_id, &version, path, |
| - crx_location_, creation_flags, |
| - auto_acknowledge_); |
| + // Don't install new default apps for existing users. |
| + // TODO(grv): remove after migration (Q1-2013). |
| + if ((!default_apps::isMigration) || IsOldDefaultApp(extension_id)) { |
|
Mihai Parparita -not on Chrome
2012/08/27 19:31:55
Reading global variables like this is a pretty big
|
| + service_->OnExternalExtensionFileFound(extension_id, &version, path, |
| + crx_location_, creation_flags, |
| + auto_acknowledge_); |
| + } else { |
| + continue; |
| + } |
| } else { // if (has_external_update_url) |
| CHECK(has_external_update_url); // Checking of keys above ensures this. |
| if (download_location_ == Extension::INVALID) { |
| @@ -258,6 +264,14 @@ void ExternalProviderImpl::SetPrefs(DictionaryValue* prefs) { |
| service_->OnExternalProviderReady(this); |
| } |
| +bool ExternalProviderImpl::IsOldDefaultApp(const std::string& extension_id) { |
| + const std::string gmail_id = "pjkljhegncpnkpknbcohdijeoejaedia"; |
| + const std::string search_id = "coobgpohoikkiipiblmjeljniedjpjpf"; |
| + const std::string youtube_id = "blpcfgokakmgnkcojhhkbfbldkacnbeo"; |
| + return extension_id == gmail_id || extension_id == search_id |
| + || extension_id == youtube_id; |
| +} |
| + |
| void ExternalProviderImpl::ServiceShutdown() { |
| service_ = NULL; |
| } |