| Index: chrome/browser/profiles/profile_info_cache.cc
|
| diff --git a/chrome/browser/profiles/profile_info_cache.cc b/chrome/browser/profiles/profile_info_cache.cc
|
| index b83881a561093bbac9f629c7546ac0acaa6f8e82..e80e0304a4f78b564b1f23f672230c73931bf196 100644
|
| --- a/chrome/browser/profiles/profile_info_cache.cc
|
| +++ b/chrome/browser/profiles/profile_info_cache.cc
|
| @@ -905,6 +905,12 @@ void ProfileInfoCache::DownloadHighResAvatarIfNeeded(
|
| #endif
|
| DCHECK(!disable_avatar_download_for_testing_);
|
|
|
| + // If this is the placeholder avatar, it is already included in the
|
| + // resources, so it doesn't need to be downloaded (and it will never be
|
| + // requested from disk by GetHighResAvatarOfProfileAtIndex).
|
| + if (icon_index == profiles::GetPlaceholderAvatarIndex())
|
| + return;
|
| +
|
| const base::FilePath& file_path =
|
| profiles::GetPathOfHighResAvatarAtIndex(icon_index);
|
| base::Closure callback =
|
| @@ -1036,20 +1042,21 @@ void ProfileInfoCache::UpdateSortForProfileIndex(size_t index) {
|
|
|
| const gfx::Image* ProfileInfoCache::GetHighResAvatarOfProfileAtIndex(
|
| size_t index) const {
|
| - int avatar_index = GetAvatarIconIndexOfProfileAtIndex(index);
|
| - std::string key = profiles::GetDefaultAvatarIconFileNameAtIndex(avatar_index);
|
| + const size_t avatar_index = GetAvatarIconIndexOfProfileAtIndex(index);
|
|
|
| // If this is the placeholder avatar, it is already included in the
|
| // resources, so it doesn't need to be downloaded.
|
| - if (!strcmp(key.c_str(), profiles::GetNoHighResAvatarFileName())) {
|
| + if (avatar_index == profiles::GetPlaceholderAvatarIndex()) {
|
| return &ui::ResourceBundle::GetSharedInstance().GetImageNamed(
|
| profiles::GetPlaceholderAvatarIconResourceID());
|
| }
|
|
|
| - base::FilePath image_path =
|
| + const std::string file_name =
|
| + profiles::GetDefaultAvatarIconFileNameAtIndex(avatar_index);
|
| + const base::FilePath image_path =
|
| profiles::GetPathOfHighResAvatarAtIndex(avatar_index);
|
| - return LoadAvatarPictureFromPath(GetPathOfProfileAtIndex(index),
|
| - key, image_path);
|
| + return LoadAvatarPictureFromPath(GetPathOfProfileAtIndex(index), file_name,
|
| + image_path);
|
| }
|
|
|
| void ProfileInfoCache::DownloadHighResAvatar(
|
| @@ -1064,8 +1071,9 @@ void ProfileInfoCache::DownloadHighResAvatar(
|
| tracked_objects::ScopedTracker tracking_profile1(
|
| FROM_HERE_WITH_EXPLICIT_FUNCTION(
|
| "461175 ProfileInfoCache::DownloadHighResAvatar::GetFileName"));
|
| - const std::string file_name =
|
| + const char* file_name =
|
| profiles::GetDefaultAvatarIconFileNameAtIndex(icon_index);
|
| + DCHECK(file_name);
|
| // If the file is already being downloaded, don't start another download.
|
| if (avatar_images_downloads_in_progress_.count(file_name))
|
| return;
|
|
|