Index: chrome/browser/ui/app_list/extension_app_item.cc |
diff --git a/chrome/browser/ui/app_list/extension_app_item.cc b/chrome/browser/ui/app_list/extension_app_item.cc |
index 1dedf03c251b9d5366c4883c47b3c310dd8da8e5..079973fbc16c9a5238e54a0390110ce175e76c9f 100644 |
--- a/chrome/browser/ui/app_list/extension_app_item.cc |
+++ b/chrome/browser/ui/app_list/extension_app_item.cc |
@@ -181,10 +181,15 @@ void ExtensionAppItem::StartExtensionUninstall() { |
void ExtensionAppItem::OnImageLoaded(const gfx::Image& image, |
const std::string& extension_id, |
int tracker_index) { |
- if (!image.IsEmpty()) |
- SetIcon(*image.ToImageSkia()); |
- else |
- SetIcon(Extension::GetDefaultIcon(true /* is_app */)); |
+ if (!image.IsEmpty()) { |
+ gfx::ImageSkia image_skia = *image.ToImageSkia(); |
+ image_skia.MakeThreadSafe(); |
+ SetIcon(image_skia); |
+ } else { |
+ gfx::ImageSkia image_skia(Extension::GetDefaultIcon(true /* is_app */)); |
+ image_skia.MakeThreadSafe(); |
+ SetIcon(image_skia); |
+ } |
} |
bool ExtensionAppItem::IsItemForCommandIdDynamic(int command_id) const { |