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)); |