Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / chromeos / profiles / profile_util.cc
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
12 namespace chromeos {
13
14 bool 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