blob: ed4fa10f931821a620ae51ea3b2c5cf7b58b074f [file] [log] [blame]
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/chromeos/profiles/profile_util.h"
#include "base/files/file_path.h"
#include "chrome/browser/chromeos/profiles/profile_helper.h"
#include "chrome/browser/profiles/profile.h"
#include "chromeos/login/login_state.h"
namespace chromeos {
bool IsProfileAssociatedWithGaiaAccount(Profile* profile) {
if (!chromeos::LoginState::IsInitialized())
return false;
if (!chromeos::LoginState::Get()->IsUserGaiaAuthenticated())
return false;
if (profile->IsOffTheRecord())
return false;
// Using ProfileHelper::GetSigninProfile() here would lead to an infinite loop
// when this method is called during the creation of the sign-in profile
// itself. Using ProfileHelper::GetSigninProfileDir() is safe because it does
// not try to access the sign-in profile.
if (profile->GetPath() == ProfileHelper::GetSigninProfileDir())
return false;
return true;
}
} // namespace chromeos