Index: chrome/common/extensions/permissions/chrome_permission_message_provider.cc |
diff --git a/chrome/common/extensions/permissions/chrome_permission_message_provider.cc b/chrome/common/extensions/permissions/chrome_permission_message_provider.cc |
index e5105cb6d657113bd7b0ebc917432720084cfa89..cd04710c90803db3edb536dd93868a9f93a4a3e6 100644 |
--- a/chrome/common/extensions/permissions/chrome_permission_message_provider.cc |
+++ b/chrome/common/extensions/permissions/chrome_permission_message_provider.cc |
@@ -37,8 +37,12 @@ PermissionMessages ChromePermissionMessageProvider::GetPermissionMessages( |
std::set<PermissionMessage> host_msgs = |
GetHostPermissionMessages(permissions, extension_type); |
std::set<PermissionMessage> api_msgs = GetAPIPermissionMessages(permissions); |
+ std::set<PermissionMessage> manifest_permission_msgs = |
+ GetManifestPermissionMessages(permissions); |
messages.insert(messages.end(), host_msgs.begin(), host_msgs.end()); |
messages.insert(messages.end(), api_msgs.begin(), api_msgs.end()); |
+ messages.insert(messages.end(), manifest_permission_msgs.begin(), |
+ manifest_permission_msgs.end()); |
return messages; |
} |
@@ -193,6 +197,22 @@ ChromePermissionMessageProvider::GetAPIPermissionMessages( |
} |
std::set<PermissionMessage> |
+ChromePermissionMessageProvider::GetManifestPermissionMessages( |
+ const PermissionSet* permissions) const { |
+ std::set<PermissionMessage> messages; |
+ for (ManifestPermissionSet::const_iterator permission_it = |
+ permissions->manifest_permissions().begin(); |
+ permission_it != permissions->manifest_permissions().end(); |
+ ++permission_it) { |
+ if (permission_it->HasMessages()) { |
+ PermissionMessages new_messages = permission_it->GetMessages(); |
+ messages.insert(new_messages.begin(), new_messages.end()); |
+ } |
+ } |
+ return messages; |
+} |
+ |
+std::set<PermissionMessage> |
ChromePermissionMessageProvider::GetHostPermissionMessages( |
const PermissionSet* permissions, |
Manifest::Type extension_type) const { |