Index: chrome/browser/extensions/extension_service.cc |
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc |
index c3c6e16f86f3553b2e5ccf26c46a5fe459cefdec..82c122a3b5b03f0bab73b4cafd66229e72f9fc00 100644 |
--- a/chrome/browser/extensions/extension_service.cc |
+++ b/chrome/browser/extensions/extension_service.cc |
@@ -7,8 +7,8 @@ |
#include <algorithm> |
#include <set> |
-#include "base/bind.h" |
#include "base/basictypes.h" |
+#include "base/bind.h" |
#include "base/callback.h" |
#include "base/command_line.h" |
#include "base/file_util.h" |
@@ -91,8 +91,8 @@ |
#include "content/browser/plugin_service.h" |
#include "content/browser/renderer_host/render_process_host.h" |
#include "content/browser/user_metrics.h" |
-#include "content/public/browser/notification_service.h" |
#include "content/common/pepper_plugin_registry.h" |
+#include "content/public/browser/notification_service.h" |
#include "content/public/browser/notification_types.h" |
#include "googleurl/src/gurl.h" |
#include "net/base/registry_controlled_domain.h" |
@@ -1410,7 +1410,8 @@ void ExtensionService::LoadInstalledExtension(const ExtensionInfo& info, |
bool write_to_prefs) { |
std::string error; |
scoped_refptr<const Extension> extension(NULL); |
- if (!extension_prefs_->IsExtensionAllowedByPolicy(info.extension_id)) { |
+ if (!extension_prefs_->IsExtensionAllowedByPolicy(info.extension_id, |
+ info.extension_location)) { |
error = errors::kDisabledByPolicy; |
} else if (info.extension_manifest.get()) { |
extension = Extension::Create( |
@@ -1699,8 +1700,10 @@ void ExtensionService::CheckAdminBlacklist() { |
for (ExtensionList::const_iterator iter = extensions_.begin(); |
iter != extensions_.end(); ++iter) { |
const Extension* extension = (*iter); |
- if (!extension_prefs_->IsExtensionAllowedByPolicy(extension->id())) |
+ if (!extension_prefs_->IsExtensionAllowedByPolicy(extension->id(), |
+ extension->location())) { |
to_be_removed.push_back(extension->id()); |
+ } |
} |
// UnloadExtension will change the extensions_ list. So, we should |
@@ -2414,6 +2417,7 @@ void ExtensionService::AddExtension(const Extension* extension) { |
void ExtensionService::InitializePermissions(const Extension* extension) { |
// If the extension has used the optional permissions API, it will have a |
+ |
Finnur
2011/10/24 15:08:13
I am repulsed by this particular change. The effec
Mattias Nissler (ping if slow)
2011/10/24 15:28:14
lol :) Done.
|
// custom set of active permissions defined in the extension prefs. Here, |
// we update the extension's active permissions based on the prefs. |
scoped_refptr<ExtensionPermissionSet> active_permissions = |