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 6d6dba08b0c0dd6a548ee9c3042c4f16ae18d81c..22f51ae69ed8ceb55cdcdffe93c16e6ce2246895 100644 |
--- a/chrome/browser/extensions/external_provider_impl.cc |
+++ b/chrome/browser/extensions/external_provider_impl.cc |
@@ -497,7 +497,21 @@ void ExternalProviderImpl::CreateExternalProviders( |
scoped_refptr<ExternalLoader> external_loader; |
scoped_refptr<ExternalLoader> external_recommended_loader; |
extensions::Manifest::Location crx_location = Manifest::INVALID_LOCATION; |
+ |
#if defined(OS_CHROMEOS) |
+ if (chromeos::ProfileHelper::IsSigninProfile(profile)) { |
Devlin
2017/03/01 16:15:00
Should we check if the command line switch is pres
|
+ // Download apps installed by policy in the sign-in profile. |
+ external_loader = new ExternalPolicyLoader( |
+ ExtensionManagementFactory::GetForBrowserContext(profile), |
+ ExternalPolicyLoader::FORCED); |
+ provider_list->push_back( |
+ std::unique_ptr<ExternalProviderInterface>(new ExternalProviderImpl( |
+ service, external_loader, profile, crx_location, |
+ Manifest::EXTERNAL_POLICY_DOWNLOAD, |
+ Extension::FROM_WEBSTORE | Extension::WAS_INSTALLED_BY_DEFAULT))); |
+ return; |
Devlin
2017/03/01 16:15:00
Are we certain we don't want any other providers i
|
+ } |
+ |
policy::BrowserPolicyConnectorChromeOS* connector = |
g_browser_process->platform_part()->browser_policy_connector_chromeos(); |
bool is_chrome_os_public_session = false; |