Index: extensions/common/permissions/permissions_data.cc |
diff --git a/extensions/common/permissions/permissions_data.cc b/extensions/common/permissions/permissions_data.cc |
index af405273e3a698f644adf8ee081b235f57ed0ffb..d0c0f47f859c3a0c826c60a4972f05f1976f40fb 100644 |
--- a/extensions/common/permissions/permissions_data.cc |
+++ b/extensions/common/permissions/permissions_data.cc |
@@ -170,8 +170,12 @@ bool PermissionsData::CheckAPIPermissionWithParam( |
return active_permissions()->CheckAPIPermissionWithParam(permission, param); |
} |
-const URLPatternSet& PermissionsData::GetEffectiveHostPermissions() const { |
- return active_permissions()->effective_hosts(); |
+URLPatternSet PermissionsData::GetEffectiveHostPermissions() const { |
+ base::AutoLock auto_lock(runtime_lock_); |
+ URLPatternSet effective_hosts = active_permissions_unsafe_->effective_hosts(); |
+ for (const auto& val : tab_specific_permissions_) |
+ effective_hosts.AddPatterns(val.second->effective_hosts()); |
+ return effective_hosts; |
} |
bool PermissionsData::HasHostPermission(const GURL& url) const { |