Index: chrome/browser/extensions/api/extension_action/extension_actions_api.cc |
diff --git a/chrome/browser/extensions/api/extension_action/extension_actions_api.cc b/chrome/browser/extensions/api/extension_action/extension_actions_api.cc |
index 7b4cd1f1ec81085d8d53513249ccdd3b1fce8854..e5b8b911658280d2094f7c16591b0fb8c73a5b43 100644 |
--- a/chrome/browser/extensions/api/extension_action/extension_actions_api.cc |
+++ b/chrome/browser/extensions/api/extension_action/extension_actions_api.cc |
@@ -126,7 +126,8 @@ scoped_ptr<base::DictionaryValue> DefaultsToValue(ExtensionAction* action) { |
dict->SetInteger(kAppearanceStorageKey, |
action->GetIsVisible(kTabId) ? |
ExtensionAction::ACTIVE : ExtensionAction::INVISIBLE); |
- dict->SetString(kIconStorageKey, ImageToString(action->GetIcon(kTabId))); |
+ dict->SetString(kIconStorageKey, |
+ ImageToString(action->GetIcon(kTabId, NULL))); |
return dict.Pass(); |
} |
@@ -418,9 +419,7 @@ bool ExtensionActionSetIconFunction::RunExtensionAction() { |
// set. Until we decide what to do with that, ignore. |
if (!GetExtension()->page_action()) |
return true; |
- if (icon_index < 0 || |
- static_cast<size_t>(icon_index) >= |
- extension_action_->icon_paths()->size()) { |
+ if (!extension_action_->IsValidIconIndex(icon_index)) { |
error_ = kIconIndexOutOfBounds; |
return false; |
} |