Index: chrome/browser/extensions/extension_action.cc |
diff --git a/chrome/browser/extensions/extension_action.cc b/chrome/browser/extensions/extension_action.cc |
index af9e8685934c872f5e0e5b4aa3cdab328156bc93..c6033e53f8fb2f48bf8ddb7643f433af4945d6ed 100644 |
--- a/chrome/browser/extensions/extension_action.cc |
+++ b/chrome/browser/extensions/extension_action.cc |
@@ -256,15 +256,20 @@ gfx::Image ExtensionAction::GetDefaultIconImage() const { |
if (default_icon_image_) |
return default_icon_image_->image(); |
- // If the extension action redesign is enabled, we use a special placeholder |
- // icon (with the first letter of the extension name) rather than the default |
- // (puzzle piece). |
- if (extensions::FeatureSwitch::extension_action_redesign()->IsEnabled()) { |
- return extensions::ExtensionIconPlaceholder::CreateImage( |
- extension_misc::EXTENSION_ICON_ACTION, extension_name_); |
+ if (placeholder_icon_image_.IsEmpty()) { |
+ // If the extension action redesign is enabled, we use a special placeholder |
+ // icon (with the first letter of the extension name) rather than the |
+ // default (puzzle piece). |
+ if (extensions::FeatureSwitch::extension_action_redesign()->IsEnabled()) { |
+ placeholder_icon_image_ = |
Devlin
2015/09/21 23:28:15
This was necessary because of a test that re-fetch
|
+ extensions::ExtensionIconPlaceholder::CreateImage( |
+ extension_misc::EXTENSION_ICON_ACTION, extension_name_); |
+ } else { |
+ placeholder_icon_image_ = GetDefaultIcon(); |
+ } |
} |
- return GetDefaultIcon(); |
+ return placeholder_icon_image_; |
} |
bool ExtensionAction::HasPopupUrl(int tab_id) const { |