diff options
Diffstat (limited to 'chromium/extensions/browser/extension_util.cc')
-rw-r--r-- | chromium/extensions/browser/extension_util.cc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/chromium/extensions/browser/extension_util.cc b/chromium/extensions/browser/extension_util.cc index 448496763d8..93c9c913745 100644 --- a/chromium/extensions/browser/extension_util.cc +++ b/chromium/extensions/browser/extension_util.cc @@ -20,9 +20,26 @@ #include "extensions/common/manifest_handlers/shared_module_info.h" #include "extensions/common/permissions/permissions_data.h" +#if defined(OS_CHROMEOS) +#include "base/system/sys_info.h" +#endif + namespace extensions { namespace util { +namespace { + +#if defined(OS_CHROMEOS) +bool IsSigninProfileTestExtensionOnTestImage(const Extension* extension) { + if (extension->id() != extension_misc::kSigninProfileTestExtensionId) + return false; + base::SysInfo::CrashIfChromeOSNonTestImage(); + return true; +} +#endif + +} // namespace + bool CanBeIncognitoEnabled(const Extension* extension) { return IncognitoInfo::IsIncognitoAllowed(extension) && (!extension->is_platform_app() || @@ -43,6 +60,10 @@ bool IsIncognitoEnabled(const std::string& extension_id, return true; if (extension->is_login_screen_extension()) return true; +#if defined(OS_CHROMEOS) + if (IsSigninProfileTestExtensionOnTestImage(extension)) + return true; +#endif } return ExtensionPrefs::Get(context)->IsIncognitoEnabled(extension_id); } |