| Index: chrome/browser/extensions/permissions_updater.cc
|
| diff --git a/chrome/browser/extensions/permissions_updater.cc b/chrome/browser/extensions/permissions_updater.cc
|
| index 2c6717a940daf69e58fa7ca25bf27d05478a2b23..64fca3130d95c9bada8c5ff15247a273b2fa7020 100644
|
| --- a/chrome/browser/extensions/permissions_updater.cc
|
| +++ b/chrome/browser/extensions/permissions_updater.cc
|
| @@ -100,9 +100,9 @@ void PermissionsUpdater::AddPermissions(
|
| scoped_refptr<const PermissionSet> existing(
|
| extension->GetActivePermissions());
|
| scoped_refptr<PermissionSet> total(
|
| - PermissionSet::CreateUnion(existing, permissions));
|
| + PermissionSet::CreateUnion(existing.get(), permissions));
|
| scoped_refptr<PermissionSet> added(
|
| - PermissionSet::CreateDifference(total.get(), existing));
|
| + PermissionSet::CreateDifference(total.get(), existing.get()));
|
|
|
| UpdateActivePermissions(extension, total.get());
|
|
|
| @@ -117,9 +117,9 @@ void PermissionsUpdater::RemovePermissions(
|
| scoped_refptr<const PermissionSet> existing(
|
| extension->GetActivePermissions());
|
| scoped_refptr<PermissionSet> total(
|
| - PermissionSet::CreateDifference(existing, permissions));
|
| + PermissionSet::CreateDifference(existing.get(), permissions));
|
| scoped_refptr<PermissionSet> removed(
|
| - PermissionSet::CreateDifference(existing, total.get()));
|
| + PermissionSet::CreateDifference(existing.get(), total.get()));
|
|
|
| // We update the active permissions, and not the granted permissions, because
|
| // the extension, not the user, removed the permissions. This allows the
|
| @@ -154,7 +154,8 @@ void PermissionsUpdater::GrantActivePermissions(const Extension* extension,
|
| }
|
|
|
| GetExtensionPrefs()->AddGrantedPermissions(extension->id(),
|
| - extension->GetActivePermissions());
|
| + extension->
|
| + GetActivePermissions().get());
|
| }
|
|
|
| void PermissionsUpdater::UpdateActivePermissions(
|
|
|