| Index: chrome/common/extensions/permissions/permission_set.cc
|
| diff --git a/chrome/common/extensions/permissions/permission_set.cc b/chrome/common/extensions/permissions/permission_set.cc
|
| index 84609c51a7796e1a9ded5d9d21fa89cf3dbc6203..81f5ce4196a0692ebf668e9cb4e33d2ad3b7bc41 100644
|
| --- a/chrome/common/extensions/permissions/permission_set.cc
|
| +++ b/chrome/common/extensions/permissions/permission_set.cc
|
| @@ -197,6 +197,23 @@ PermissionSet* PermissionSet::CreateUnion(
|
| return new PermissionSet(apis, explicit_hosts, scriptable_hosts);
|
| }
|
|
|
| +// static
|
| +PermissionSet* PermissionSet::ExcludeNotInManifestPermissions(
|
| + const PermissionSet* set) {
|
| + if (!set)
|
| + return new PermissionSet();
|
| +
|
| + APIPermissionSet apis;
|
| + for (APIPermissionSet::const_iterator i = set->apis().begin();
|
| + i != set->apis().end(); ++i) {
|
| + if (!i->ManifestEntryForbidden())
|
| + apis.insert(i->Clone());
|
| + }
|
| +
|
| + return new PermissionSet(
|
| + apis, set->explicit_hosts(), set->scriptable_hosts());
|
| +}
|
| +
|
| bool PermissionSet::operator==(
|
| const PermissionSet& rhs) const {
|
| return apis_ == rhs.apis_ &&
|
|
|