Index: chrome/browser/chromeos/login/session/user_session_manager.cc |
diff --git a/chrome/browser/chromeos/login/session/user_session_manager.cc b/chrome/browser/chromeos/login/session/user_session_manager.cc |
index 1d6b4e5ae10ae12a9c719d4a7d3c651f57a38561..1c9cc4e135106f957beec9bc5c980abb1d2d8b73 100644 |
--- a/chrome/browser/chromeos/login/session/user_session_manager.cc |
+++ b/chrome/browser/chromeos/login/session/user_session_manager.cc |
@@ -513,7 +513,10 @@ void UserSessionManager::StartSession( |
user_context.GetDeviceId()); |
} |
- PrepareProfile(); |
+ arc::UpdateArcFileSystemCompatibilityPrefIfNeeded( |
+ user_context_.GetAccountId(), |
+ ProfileHelper::GetProfilePathByUserIdHash(user_context_.GetUserIDHash()), |
+ base::Bind(&UserSessionManager::PrepareProfile, AsWeakPtr())); |
} |
void UserSessionManager::DelegateDeleted(UserSessionManagerDelegate* delegate) { |
@@ -984,23 +987,6 @@ void UserSessionManager::StartCrosSession() { |
} |
void UserSessionManager::PrepareProfile() { |
- const base::FilePath profile_path = |
- ProfileHelper::GetProfilePathByUserIdHash(user_context_.GetUserIDHash()); |
- |
- base::PostTaskWithTraitsAndReplyWithResult( |
- FROM_HERE, |
- base::TaskTraits() |
- .WithShutdownBehavior( |
- base::TaskShutdownBehavior::CONTINUE_ON_SHUTDOWN) |
- .WithPriority(base::TaskPriority::USER_BLOCKING) |
- .MayBlock(), |
- base::Bind(&arc::IsArcCompatibleFilesystem, profile_path), |
- base::Bind(&UserSessionManager::PrepareProfileAfterFilesystemCheck, |
- AsWeakPtr())); |
-} |
- |
-void UserSessionManager::PrepareProfileAfterFilesystemCheck( |
- bool arc_compatible_filesystem) { |
const bool is_demo_session = |
DemoAppLauncher::IsDemoAppSession(user_context_.GetAccountId()); |
@@ -1009,13 +995,12 @@ void UserSessionManager::PrepareProfileAfterFilesystemCheck( |
g_browser_process->profile_manager()->CreateProfileAsync( |
ProfileHelper::GetProfilePathByUserIdHash(user_context_.GetUserIDHash()), |
base::Bind(&UserSessionManager::OnProfileCreated, AsWeakPtr(), |
- user_context_, is_demo_session, arc_compatible_filesystem), |
+ user_context_, is_demo_session), |
base::string16(), std::string(), std::string()); |
} |
void UserSessionManager::OnProfileCreated(const UserContext& user_context, |
bool is_incognito_profile, |
- bool arc_compatible_filesystem, |
Profile* profile, |
Profile::CreateStatus status) { |
CHECK(profile); |
@@ -1023,7 +1008,7 @@ void UserSessionManager::OnProfileCreated(const UserContext& user_context, |
switch (status) { |
case Profile::CREATE_STATUS_CREATED: |
// Profile created but before initializing extensions and promo resources. |
- InitProfilePreferences(profile, user_context, arc_compatible_filesystem); |
+ InitProfilePreferences(profile, user_context); |
break; |
case Profile::CREATE_STATUS_INITIALIZED: |
// Profile is created, extensions and promo resources are initialized. |
@@ -1043,11 +1028,7 @@ void UserSessionManager::OnProfileCreated(const UserContext& user_context, |
void UserSessionManager::InitProfilePreferences( |
Profile* profile, |
- const UserContext& user_context, |
- bool arc_compatible_filesystem) { |
- profile->GetPrefs()->SetBoolean(prefs::kArcCompatibleFilesystemChosen, |
- arc_compatible_filesystem); |
- |
+ const UserContext& user_context) { |
const user_manager::User* user = |
ProfileHelper::Get()->GetUserByProfile(profile); |
if (user->GetType() == user_manager::USER_TYPE_KIOSK_APP && |