| 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) {
|
|
|