Index: chrome/browser/extensions/api/permissions/permissions_api.cc |
diff --git a/chrome/browser/extensions/api/permissions/permissions_api.cc b/chrome/browser/extensions/api/permissions/permissions_api.cc |
index 910bb61ac84176a6ef49beec64635a070f17d99b..6492b20eaa369a4e5b7a82ed691b93b1de7030d0 100644 |
--- a/chrome/browser/extensions/api/permissions/permissions_api.cc |
+++ b/chrome/browser/extensions/api/permissions/permissions_api.cc |
@@ -68,7 +68,8 @@ bool PermissionsContainsFunction::RunImpl() { |
return false; |
results_ = Contains::Results::Create( |
- GetExtension()->GetActivePermissions()->Contains(*permissions)); |
+ GetExtension()->GetActivePermissions()->ContainsOrEncompasses( |
+ *permissions)); |
return true; |
} |
@@ -110,7 +111,6 @@ bool PermissionsRemoveFunction::RunImpl() { |
PermissionSet::CreateIntersection(permissions.get(), required)); |
if (!intersection->IsEmpty()) { |
error_ = kCantRemoveRequiredPermissionsError; |
- results_ = Remove::Results::Create(false); |
return false; |
} |
@@ -159,7 +159,7 @@ bool PermissionsRequestFunction::RunImpl() { |
} |
scoped_ptr<Request::Params> params(Request::Params::Create(*args_)); |
- EXTENSION_FUNCTION_VALIDATE(params.get()); |
+ EXTENSION_FUNCTION_VALIDATE(params); |
ExtensionPrefs* prefs = ExtensionSystem::Get(profile_)->extension_prefs(); |
@@ -189,10 +189,9 @@ bool PermissionsRequestFunction::RunImpl() { |
requested_permissions_.get()); |
// The requested permissions must be defined as optional in the manifest. |
- if (!GetExtension()->optional_permission_set()->Contains( |
+ if (!GetExtension()->optional_permission_set()->ContainsOrEncompasses( |
*manifest_required_requested_permissions)) { |
error_ = kNotInOptionalPermissionsError; |
- results_ = Request::Results::Create(false); |
return false; |
} |
@@ -200,7 +199,7 @@ bool PermissionsRequestFunction::RunImpl() { |
// of the granted permissions set. |
scoped_refptr<const PermissionSet> granted = |
prefs->GetGrantedPermissions(GetExtension()->id()); |
- if (granted.get() && granted->Contains(*requested_permissions_)) { |
+ if (granted && granted->ContainsOrEncompasses(*requested_permissions_)) { |
PermissionsUpdater perms_updater(profile()); |
perms_updater.AddPermissions(GetExtension(), requested_permissions_.get()); |
results_ = Request::Results::Create(true); |