| Index: chrome/browser/chrome_browser_main.cc
|
| diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc
|
| index dc203f9f5a3b19882d8bc06da28263a5d32704f1..695da9b02e4666e0dc5eea24d380c164e30f9b8d 100644
|
| --- a/chrome/browser/chrome_browser_main.cc
|
| +++ b/chrome/browser/chrome_browser_main.cc
|
| @@ -1160,6 +1160,13 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
| #endif // defined(OS_WIN)
|
|
|
| if (parsed_command_line().HasSwitch(switches::kMakeDefaultBrowser)) {
|
| + bool is_managed = g_browser_process->local_state()->IsManagedPreference(
|
| + prefs::kDefaultBrowserSettingEnabled);
|
| + if (is_managed && !g_browser_process->local_state()->GetBoolean(
|
| + prefs::kDefaultBrowserSettingEnabled)) {
|
| + return static_cast<int>(chrome::RESULT_CODE_ACTION_DISALLOWED_BY_POLICY);
|
| + }
|
| +
|
| return ShellIntegration::SetAsDefaultBrowser() ?
|
| static_cast<int>(content::RESULT_CODE_NORMAL_EXIT) :
|
| static_cast<int>(chrome::RESULT_CODE_SHELL_INTEGRATION_FAILED);
|
|
|