Index: chrome/browser/extensions/extension_assets_manager_chromeos.cc |
diff --git a/chrome/browser/extensions/extension_assets_manager_chromeos.cc b/chrome/browser/extensions/extension_assets_manager_chromeos.cc |
index 3daea4e4a8e59fed213565965e103fd138fb59fc..acdb280d5fe8fa3ac056529254f1bb53e6fa7c2c 100644 |
--- a/chrome/browser/extensions/extension_assets_manager_chromeos.cc |
+++ b/chrome/browser/extensions/extension_assets_manager_chromeos.cc |
@@ -280,14 +280,14 @@ void ExtensionAssetsManagerChromeOS::CheckSharedExtension( |
InstallExtensionCallback callback) { |
DCHECK_CURRENTLY_ON(BrowserThread::UI); |
- const std::string& user_id = profile->GetProfileUserName(); |
+ const user_manager::User* user = chromeos::ProfileHelper::Get()->GetUserByProfile(profile); |
user_manager::UserManager* user_manager = user_manager::UserManager::Get(); |
if (!user_manager) { |
NOTREACHED(); |
return; |
} |
- if (user_manager->IsUserNonCryptohomeDataEphemeral(user_id) || |
+ if (user_manager->IsUserNonCryptohomeDataEphemeral(user->GetUserID()) || |
!user_manager->IsLoggedInAsUserWithGaiaAccount()) { |
// Don't cache anything in shared location for ephemeral user or special |
// user types. |
@@ -318,14 +318,14 @@ void ExtensionAssetsManagerChromeOS::CheckSharedExtension( |
bool user_found = false; |
for (size_t i = 0; i < users_size; i++) { |
std::string temp; |
- if (users->GetString(i, &temp) && temp == user_id) { |
+ if (users->GetString(i, &temp) && temp == user->GetUserID().GetUserEmail()) { |
// Re-installation for the same user. |
user_found = true; |
break; |
} |
} |
if (!user_found) |
- users->AppendString(user_id); |
+ users->AppendString(user->GetUserID().GetUserEmail()); |
// unpacked_extension_root will be deleted by CrxInstaller. |
ExtensionAssetsManagerChromeOS::GetFileTaskRunner(profile)->PostTask( |
@@ -525,11 +525,12 @@ bool ExtensionAssetsManagerChromeOS::CleanUpExtension( |
size_t num_users = users->GetSize(); |
for (size_t i = 0; i < num_users; i++) { |
- std::string user_id; |
- if (!users->GetString(i, &user_id)) { |
+ std::string user_email; |
+ if (!users->GetString(i, &user_email)) { |
NOTREACHED(); |
return false; |
} |
+ const user_manager::UserID user_id(std::string() /* gaia_id */, user_email); |
const user_manager::User* user = user_manager->FindUser(user_id); |
bool not_used = false; |
if (!user) { |