1// Copyright 2013 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "chrome/browser/chromeos/profiles/profile_util.h" 6 7#include "base/files/file_path.h" 8#include "chrome/browser/chromeos/profiles/profile_helper.h" 9#include "chrome/browser/profiles/profile.h" 10#include "chromeos/login/login_state.h" 11 12namespace chromeos { 13 14bool IsProfileAssociatedWithGaiaAccount(Profile* profile) { 15 if (!chromeos::LoginState::IsInitialized()) 16 return false; 17 if (!chromeos::LoginState::Get()->IsUserGaiaAuthenticated()) 18 return false; 19 if (profile->IsOffTheRecord()) 20 return false; 21 22 // Using ProfileHelper::GetSigninProfile() here would lead to an infinite loop 23 // when this method is called during the creation of the sign-in profile 24 // itself. Using ProfileHelper::GetSigninProfileDir() is safe because it does 25 // not try to access the sign-in profile. 26 if (profile->GetPath() == ProfileHelper::GetSigninProfileDir()) 27 return false; 28 return true; 29} 30 31} // namespace chromeos 32