Chromium Code Reviews| Index: chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.cc |
| diff --git a/chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.cc b/chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.cc |
| index 48091bdd93e4b5d9ad95797213f5aee74b2e0914..ad922d83194ef17c758ee71d9bddd36a977f76e0 100644 |
| --- a/chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.cc |
| +++ b/chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.cc |
| @@ -17,6 +17,7 @@ |
| #include "chrome/browser/browser_process.h" |
| #include "chrome/browser/chromeos/login/login_utils.h" |
| #include "chrome/browser/chromeos/login/users/user.h" |
| +#include "chrome/browser/chromeos/login/users/user_manager.h" |
| #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" |
| #include "chrome/browser/chromeos/policy/user_cloud_external_data_manager.h" |
| #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h" |
| @@ -29,6 +30,7 @@ |
| #include "chromeos/chromeos_switches.h" |
| #include "chromeos/dbus/dbus_thread_manager.h" |
| #include "components/keyed_service/content/browser_context_dependency_manager.h" |
| +#include "components/policy/core/browser/browser_policy_connector.h" |
| #include "components/policy/core/common/cloud/cloud_external_data_manager.h" |
| #include "components/policy/core/common/cloud/device_management_service.h" |
| #include "components/user_manager/user_type.h" |
| @@ -138,6 +140,8 @@ scoped_ptr<UserCloudPolicyManagerChromeOS> |
| BrowserPolicyConnector::IsNonEnterpriseUser(username)) { |
| return scoped_ptr<UserCloudPolicyManagerChromeOS>(); |
| } |
| + // If the user is known to be a non enterprise user, we don't reach this code. |
| + DCHECK(!BrowserPolicyConnector::IsNonEnterpriseUser(username)); |
|
Joao da Silva
2014/07/09 12:31:16
This is guaranteed by the statement immediately be
kaliamoorthi
2014/07/11 10:05:19
Done.
|
| policy::BrowserPolicyConnectorChromeOS* connector = |
| g_browser_process->platform_part()->browser_policy_connector_chromeos(); |
| @@ -145,7 +149,15 @@ scoped_ptr<UserCloudPolicyManagerChromeOS> |
| const bool is_managed_user = affiliation == USER_AFFILIATION_MANAGED; |
|
bartfab (slow)
2014/07/08 17:40:33
Nit: Better s/is_managed_user/is_affiliated_user/.
kaliamoorthi
2014/07/11 10:05:20
Done.
|
| const bool is_browser_restart = |
| command_line->HasSwitch(chromeos::switches::kLoginUser); |
| - const bool wait_for_initial_policy = is_managed_user && !is_browser_restart; |
| + const bool wait_for_initial_policy = |
| + (chromeos::UserManager::Get()->IsCurrentUserNew() ? true |
|
Andrew T Wilson (Slow)
2014/07/09 13:37:59
Nit: I think:
IsCurrentUserNew() || is_managed_us
kaliamoorthi
2014/07/11 10:05:19
Done.
|
| + : is_managed_user) && |
| + !is_browser_restart; |
| + |
| + const base::TimeDelta initial_policy_fetch_timeout = |
| + chromeos::UserManager::Get()->IsCurrentUserNew() |
| + ? base::TimeDelta::Max() |
| + : base::TimeDelta::FromSeconds(kInitialPolicyFetchTimeoutSeconds); |
| DeviceManagementService* device_management_service = |
| connector->device_management_service(); |
| @@ -195,7 +207,7 @@ scoped_ptr<UserCloudPolicyManagerChromeOS> |
| external_data_manager.Pass(), |
| component_policy_cache_dir, |
| wait_for_initial_policy, |
| - base::TimeDelta::FromSeconds(kInitialPolicyFetchTimeoutSeconds), |
| + initial_policy_fetch_timeout, |
| base::MessageLoopProxy::current(), |
| file_task_runner, |
| io_task_runner)); |