summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions/extension.cc
diff options
context:
space:
mode:
authorpam@chromium.org <pam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-28 22:06:56 +0000
committerpam@chromium.org <pam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-28 22:06:56 +0000
commit18cbf31cbcefcaae2c7e302b5f0a856dea51b30c (patch)
tree8d1d0776f5934e9389350ff5796514d09328748b /chrome/common/extensions/extension.cc
parent0f32a1d67bf2d6166b0b535672a39e75ad019ea8 (diff)
downloadchromium_src-18cbf31cbcefcaae2c7e302b5f0a856dea51b30c.zip
chromium_src-18cbf31cbcefcaae2c7e302b5f0a856dea51b30c.tar.gz
chromium_src-18cbf31cbcefcaae2c7e302b5f0a856dea51b30c.tar.bz2
Neither name nor title are required for page- or browser-actions. Update loader
and unit tests. BUG=25482 TEST=covered by unit tests Review URL: http://codereview.chromium.org/307048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30392 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions/extension.cc')
-rw-r--r--chrome/common/extensions/extension.cc17
1 files changed, 12 insertions, 5 deletions
diff --git a/chrome/common/extensions/extension.cc b/chrome/common/extensions/extension.cc
index db05c4b..ab2ff76 100644
--- a/chrome/common/extensions/extension.cc
+++ b/chrome/common/extensions/extension.cc
@@ -344,12 +344,19 @@ ExtensionAction* Extension::LoadExtensionActionHelper(
result->set_default_icon_path(default_icon);
}
- // Read the page action |default_title|.
+ // Read the page action title from |default_title| if present, |name| if not
+ // (both optional).
std::string title;
- if (!extension_action->GetString(keys::kName, &title) &&
- !extension_action->GetString(keys::kPageActionDefaultTitle, &title)) {
- *error = errors::kInvalidPageActionDefaultTitle;
- return NULL;
+ if (extension_action->HasKey(keys::kPageActionDefaultTitle)) {
+ if (!extension_action->GetString(keys::kPageActionDefaultTitle, &title)) {
+ *error = errors::kInvalidPageActionDefaultTitle;
+ return NULL;
+ }
+ } else if (extension_action->HasKey(keys::kName)) {
+ if (!extension_action->GetString(keys::kName, &title)) {
+ *error = errors::kInvalidPageActionName;
+ return NULL;
+ }
}
result->SetTitle(ExtensionAction::kDefaultTabId, title);