| Index: components/signin/core/browser/signin_manager_base.cc
|
| diff --git a/components/signin/core/browser/signin_manager_base.cc b/components/signin/core/browser/signin_manager_base.cc
|
| index 8d6f3096cb95b86231557acfa8c1c478d3d8824b..7b20d5cd59de47a85e758965816d16f880f2b00d 100644
|
| --- a/components/signin/core/browser/signin_manager_base.cc
|
| +++ b/components/signin/core/browser/signin_manager_base.cc
|
| @@ -41,16 +41,8 @@ void SigninManagerBase::Initialize(PrefService* local_state) {
|
|
|
| std::string user =
|
| client_->GetPrefs()->GetString(prefs::kGoogleServicesUsername);
|
| - if (!user.empty()) {
|
| -#if defined(OS_IOS)
|
| - // Prior to M38, Chrome on iOS did not normalize the email before setting
|
| - // it in SigninManager. |AccountReconcilor| expects the authenticated email
|
| - // to be normalized as it used as an account identifier and is compared
|
| - // to the accounts available in the cookies.
|
| - user = gaia::CanonicalizeEmail(gaia::SanitizeEmail(user));
|
| -#endif
|
| + if (!user.empty())
|
| SetAuthenticatedUsername(user);
|
| - }
|
| }
|
|
|
| bool SigninManagerBase::IsInitialized() const { return initialized_; }
|
| @@ -64,7 +56,7 @@ const std::string& SigninManagerBase::GetAuthenticatedUsername() const {
|
| }
|
|
|
| const std::string& SigninManagerBase::GetAuthenticatedAccountId() const {
|
| - return GetAuthenticatedUsername();
|
| + return authenticated_account_id_;
|
| }
|
|
|
| void SigninManagerBase::SetAuthenticatedUsername(const std::string& username) {
|
| @@ -91,6 +83,12 @@ void SigninManagerBase::SetAuthenticatedUsername(const std::string& username) {
|
| DCHECK(pref_username.empty() || gaia::AreEmailsSame(username, pref_username))
|
| << "username: " << username << "; pref_username: " << pref_username;
|
| authenticated_username_ = username;
|
| +
|
| + // Some tests don't use a real email address for the username. To support
|
| + // these cases, don't try to canonicalize these strings.
|
| + authenticated_account_id_ = (username.find('@') == std::string::npos)
|
| + ? username
|
| + : gaia::CanonicalizeEmail(gaia::SanitizeEmail(username));
|
| client_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, username);
|
| NotifyDiagnosticsObservers(USERNAME, username);
|
|
|
| @@ -100,12 +98,13 @@ void SigninManagerBase::SetAuthenticatedUsername(const std::string& username) {
|
| client_->GetPrefs()->SetString(prefs::kGoogleServicesLastUsername, username);
|
| }
|
|
|
| -void SigninManagerBase::clear_authenticated_username() {
|
| +void SigninManagerBase::ClearAuthenticatedUsername() {
|
| authenticated_username_.clear();
|
| + authenticated_account_id_.clear();
|
| }
|
|
|
| bool SigninManagerBase::IsAuthenticated() const {
|
| - return !GetAuthenticatedAccountId().empty();
|
| + return !authenticated_account_id_.empty();
|
| }
|
|
|
| bool SigninManagerBase::AuthInProgress() const {
|
|
|