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 c3a50886c1f12d208199d319a39e1147fa86d53a..5d35593561548116d350a79548b997e318037cbb 100644 |
--- a/chrome/browser/extensions/external_provider_impl.cc |
+++ b/chrome/browser/extensions/external_provider_impl.cc |
@@ -12,7 +12,6 @@ |
#include "base/command_line.h" |
#include "base/files/file_path.h" |
#include "base/logging.h" |
-#include "base/memory/linked_ptr.h" |
#include "base/metrics/field_trial.h" |
#include "base/stl_util.h" |
#include "base/strings/string_util.h" |
@@ -531,14 +530,9 @@ void ExternalProviderImpl::CreateExternalProviders( |
// Policies are mandatory so they can't be skipped with command line flag. |
if (external_loader.get()) { |
provider_list->push_back( |
- linked_ptr<ExternalProviderInterface>( |
- new ExternalProviderImpl( |
- service, |
- external_loader, |
- profile, |
- crx_location, |
- Manifest::EXTERNAL_POLICY_DOWNLOAD, |
- Extension::NO_FLAGS))); |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
Devlin
2016/08/30 19:21:53
prefer base::MakeUnique
lazyboy
2016/08/30 20:30:56
Done.
|
+ service, external_loader, profile, crx_location, |
+ Manifest::EXTERNAL_POLICY_DOWNLOAD, Extension::NO_FLAGS))); |
} |
// Load the KioskAppExternalProvider when running in kiosk mode. |
@@ -565,8 +559,7 @@ void ExternalProviderImpl::CreateExternalProviders( |
location, Manifest::INVALID_LOCATION, Extension::NO_FLAGS)); |
kiosk_app_provider->set_auto_acknowledge(true); |
kiosk_app_provider->set_install_immediately(true); |
- provider_list->push_back( |
- linked_ptr<ExternalProviderInterface>(kiosk_app_provider.release())); |
+ provider_list->push_back(std::move(kiosk_app_provider)); |
} |
// Kiosk secondary app external provider. |
@@ -578,8 +571,7 @@ void ExternalProviderImpl::CreateExternalProviders( |
Manifest::EXTERNAL_PREF_DOWNLOAD, Extension::NO_FLAGS)); |
secondary_kiosk_app_provider->set_auto_acknowledge(true); |
secondary_kiosk_app_provider->set_install_immediately(true); |
- provider_list->push_back(linked_ptr<ExternalProviderInterface>( |
- secondary_kiosk_app_provider.release())); |
+ provider_list->push_back(std::move(secondary_kiosk_app_provider)); |
} |
#endif |
return; |
@@ -587,13 +579,10 @@ void ExternalProviderImpl::CreateExternalProviders( |
// Extensions provided by recommended policies. |
if (external_recommended_loader.get()) { |
- provider_list->push_back(linked_ptr<ExternalProviderInterface>( |
- new ExternalProviderImpl(service, |
- external_recommended_loader, |
- profile, |
- crx_location, |
- Manifest::EXTERNAL_PREF_DOWNLOAD, |
- Extension::NO_FLAGS))); |
+ provider_list->push_back( |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
Devlin
2016/08/30 19:21:53
ditto
lazyboy
2016/08/30 20:30:56
Done.
|
+ service, external_recommended_loader, profile, crx_location, |
+ Manifest::EXTERNAL_PREF_DOWNLOAD, Extension::NO_FLAGS))); |
} |
// In tests don't install extensions from default external sources. |
@@ -628,7 +617,7 @@ void ExternalProviderImpl::CreateExternalProviders( |
? ExternalPrefLoader::DELAY_LOAD_UNTIL_PRIORITY_SYNC |
: ExternalPrefLoader::NONE; |
provider_list->push_back( |
- linked_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
Devlin
2016/08/30 19:21:53
ditto (and for the rest of this file)
lazyboy
2016/08/30 20:30:56
Done.
|
service, new ExternalPrefLoader(external_apps_path_id, |
pref_load_flags, profile), |
profile, Manifest::EXTERNAL_PREF, Manifest::EXTERNAL_PREF_DOWNLOAD, |
@@ -639,68 +628,49 @@ void ExternalProviderImpl::CreateExternalProviders( |
bundled_extension_creation_flags | Extension::WAS_INSTALLED_BY_OEM; |
chromeos::ServicesCustomizationDocument* customization = |
chromeos::ServicesCustomizationDocument::GetInstance(); |
- provider_list->push_back(linked_ptr<ExternalProviderInterface>( |
- new ExternalProviderImpl(service, |
- customization->CreateExternalLoader(profile), |
- profile, |
- Manifest::EXTERNAL_PREF, |
- Manifest::EXTERNAL_PREF_DOWNLOAD, |
- oem_extension_creation_flags))); |
+ provider_list->push_back( |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
+ service, customization->CreateExternalLoader(profile), profile, |
+ Manifest::EXTERNAL_PREF, Manifest::EXTERNAL_PREF_DOWNLOAD, |
+ oem_extension_creation_flags))); |
} |
#elif defined(OS_LINUX) |
if (!profile->IsLegacySupervised()) { |
provider_list->push_back( |
- linked_ptr<ExternalProviderInterface>( |
- new ExternalProviderImpl( |
- service, |
- new ExternalPrefLoader( |
- chrome::DIR_STANDALONE_EXTERNAL_EXTENSIONS, |
- ExternalPrefLoader::NONE, |
- NULL), |
- profile, |
- Manifest::EXTERNAL_PREF, |
- Manifest::EXTERNAL_PREF_DOWNLOAD, |
- bundled_extension_creation_flags))); |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
+ service, |
+ new ExternalPrefLoader(chrome::DIR_STANDALONE_EXTERNAL_EXTENSIONS, |
+ ExternalPrefLoader::NONE, nullptr), |
+ profile, Manifest::EXTERNAL_PREF, Manifest::EXTERNAL_PREF_DOWNLOAD, |
+ bundled_extension_creation_flags))); |
} |
#endif |
if (!profile->IsLegacySupervised()) { |
#if defined(OS_WIN) |
provider_list->push_back( |
- linked_ptr<ExternalProviderInterface>( |
- new ExternalProviderImpl( |
- service, |
- new ExternalRegistryLoader, |
- profile, |
- Manifest::EXTERNAL_REGISTRY, |
- Manifest::EXTERNAL_PREF_DOWNLOAD, |
- Extension::NO_FLAGS))); |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
+ service, new ExternalRegistryLoader, profile, |
+ Manifest::EXTERNAL_REGISTRY, Manifest::EXTERNAL_PREF_DOWNLOAD, |
+ Extension::NO_FLAGS))); |
#else |
provider_list->push_back( |
- linked_ptr<ExternalProviderInterface>( |
- new ExternalProviderImpl( |
- service, |
- new ExternalPrefLoader(chrome::DIR_EXTERNAL_EXTENSIONS, |
- check_admin_permissions_on_mac, |
- NULL), |
- profile, |
- Manifest::EXTERNAL_PREF, |
- Manifest::EXTERNAL_PREF_DOWNLOAD, |
- bundled_extension_creation_flags))); |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
+ service, |
+ new ExternalPrefLoader(chrome::DIR_EXTERNAL_EXTENSIONS, |
+ check_admin_permissions_on_mac, nullptr), |
+ profile, Manifest::EXTERNAL_PREF, Manifest::EXTERNAL_PREF_DOWNLOAD, |
+ bundled_extension_creation_flags))); |
// Define a per-user source of external extensions. |
#if defined(OS_MACOSX) || (defined(OS_LINUX) && defined(CHROMIUM_BUILD)) |
provider_list->push_back( |
- linked_ptr<ExternalProviderInterface>( |
- new ExternalProviderImpl( |
- service, |
- new ExternalPrefLoader(chrome::DIR_USER_EXTERNAL_EXTENSIONS, |
- ExternalPrefLoader::NONE, |
- NULL), |
- profile, |
- Manifest::EXTERNAL_PREF, |
- Manifest::EXTERNAL_PREF_DOWNLOAD, |
- Extension::NO_FLAGS))); |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
+ service, |
+ new ExternalPrefLoader(chrome::DIR_USER_EXTERNAL_EXTENSIONS, |
+ ExternalPrefLoader::NONE, nullptr), |
+ profile, Manifest::EXTERNAL_PREF, Manifest::EXTERNAL_PREF_DOWNLOAD, |
+ Extension::NO_FLAGS))); |
#endif |
#endif |
@@ -708,17 +678,12 @@ void ExternalProviderImpl::CreateExternalProviders( |
// The default apps are installed as INTERNAL but use the external |
// extension installer codeflow. |
provider_list->push_back( |
- linked_ptr<ExternalProviderInterface>( |
- new default_apps::Provider( |
- profile, |
- service, |
- new ExternalPrefLoader(chrome::DIR_DEFAULT_APPS, |
- ExternalPrefLoader::NONE, |
- NULL), |
- Manifest::INTERNAL, |
- Manifest::INTERNAL, |
- Extension::FROM_WEBSTORE | |
- Extension::WAS_INSTALLED_BY_DEFAULT))); |
+ std::unique_ptr<ExternalProviderInterface>(new default_apps::Provider( |
+ profile, service, |
+ new ExternalPrefLoader(chrome::DIR_DEFAULT_APPS, |
+ ExternalPrefLoader::NONE, nullptr), |
+ Manifest::INTERNAL, Manifest::INTERNAL, |
+ Extension::FROM_WEBSTORE | Extension::WAS_INSTALLED_BY_DEFAULT))); |
#endif |
std::unique_ptr<ExternalProviderImpl> drive_migration_provider( |
@@ -729,18 +694,13 @@ void ExternalProviderImpl::CreateExternalProviders( |
profile, Manifest::EXTERNAL_PREF, Manifest::EXTERNAL_PREF_DOWNLOAD, |
Extension::FROM_WEBSTORE | Extension::WAS_INSTALLED_BY_DEFAULT)); |
drive_migration_provider->set_auto_acknowledge(true); |
- provider_list->push_back(linked_ptr<ExternalProviderInterface>( |
- drive_migration_provider.release())); |
+ provider_list->push_back(std::move(drive_migration_provider)); |
} |
provider_list->push_back( |
- linked_ptr<ExternalProviderInterface>( |
- new ExternalProviderImpl( |
- service, |
- new ExternalComponentLoader(profile), |
- profile, |
- Manifest::INVALID_LOCATION, |
- Manifest::EXTERNAL_COMPONENT, |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
+ service, new ExternalComponentLoader(profile), profile, |
+ Manifest::INVALID_LOCATION, Manifest::EXTERNAL_COMPONENT, |
Extension::FROM_WEBSTORE | Extension::WAS_INSTALLED_BY_DEFAULT))); |
} |