Index: chrome/browser/policy/policy_notifier.cc |
diff --git a/chrome/browser/policy/policy_notifier.cc b/chrome/browser/policy/policy_notifier.cc |
index 9b993345ab80f386d5934c2e72a7b06843acd304..69de8f600d9da43728c1d3095a8507b87b7e322b 100644 |
--- a/chrome/browser/policy/policy_notifier.cc |
+++ b/chrome/browser/policy/policy_notifier.cc |
@@ -57,6 +57,12 @@ void PolicyNotifier::RecomputeState() { |
} else if (s[POLICY_CONTROLLER] == CloudPolicySubsystem::NETWORK_ERROR) { |
state_ = s[POLICY_CONTROLLER]; |
error_details_ = e[POLICY_CONTROLLER]; |
+ } else if (s[TOKEN_FETCHER] == CloudPolicySubsystem::SUCCESS && |
+ s[POLICY_CONTROLLER] != CloudPolicySubsystem::SUCCESS) { |
+ // We need to be able to differentiate between token fetch success or |
+ // policy fetch success. |
+ state_ = CloudPolicySubsystem::TOKEN_FETCHED; |
+ error_details_ = CloudPolicySubsystem::NO_DETAILS; |
} else { |
state_ = s[POLICY_CACHE]; |
error_details_ = e[POLICY_CACHE]; |