Index: components/signin/core/browser/signin_error_controller.cc |
diff --git a/components/signin/core/browser/signin_error_controller.cc b/components/signin/core/browser/signin_error_controller.cc |
index eb680105d10cb8a2674404d1a71b543ac518a3aa..b145cf9528ae7222e4cd2bfd080b66ee530f44f7 100644 |
--- a/components/signin/core/browser/signin_error_controller.cc |
+++ b/components/signin/core/browser/signin_error_controller.cc |
@@ -4,6 +4,9 @@ |
#include "components/signin/core/browser/signin_error_controller.h" |
+#include "components/signin/core/browser/signin_client.h" |
+#include "components/signin/core/browser/signin_metrics.h" |
+ |
namespace { |
typedef std::set<const SigninErrorController::AuthStatusProvider*> |
@@ -17,8 +20,9 @@ SigninErrorController::AuthStatusProvider::AuthStatusProvider() { |
SigninErrorController::AuthStatusProvider::~AuthStatusProvider() { |
} |
-SigninErrorController::SigninErrorController() |
+SigninErrorController::SigninErrorController(SigninClient* signin_client) |
: auth_error_(GoogleServiceAuthError::AuthErrorNone()) { |
+ AddObserver(signin_client); |
} |
SigninErrorController::~SigninErrorController() { |
@@ -92,6 +96,7 @@ void SigninErrorController::AuthStatusChanged() { |
} |
if (error_changed) { |
+ signin_metrics::LogAuthError(auth_error_.state()); |
FOR_EACH_OBSERVER(Observer, observer_list_, OnErrorChanged()); |
} |
} |