| Index: chrome/common/extensions/permissions/api_permission_set.cc
|
| diff --git a/chrome/common/extensions/permissions/api_permission_set.cc b/chrome/common/extensions/permissions/api_permission_set.cc
|
| index fd28f55e7c1efa2be79454923b26c706d8385a79..09a9f3cec034b4e992eb558c3ee021b3c3951451 100644
|
| --- a/chrome/common/extensions/permissions/api_permission_set.cc
|
| +++ b/chrome/common/extensions/permissions/api_permission_set.cc
|
| @@ -33,7 +33,14 @@ bool CreateAPIPermission(
|
| if (permission_info) {
|
| scoped_ptr<APIPermission> permission(
|
| permission_info->CreateAPIPermission());
|
| - if (!permission->FromValue(permission_value)) {
|
| + if (permission->ManifestEntryForbidden()) {
|
| + if (error) {
|
| + *error = ErrorUtils::FormatErrorMessageUTF16(
|
| + errors::kPermissionNotAllowedInManifest, permission_info->name());
|
| + return false;
|
| + }
|
| + LOG(WARNING) << "Permission not allowed in manifest.";
|
| + } else if (!permission->FromValue(permission_value)) {
|
| if (error) {
|
| *error = ErrorUtils::FormatErrorMessageUTF16(
|
| errors::kInvalidPermission, permission_info->name());
|
|
|