| Index: extensions/browser/extension_registry.cc
|
| diff --git a/extensions/browser/extension_registry.cc b/extensions/browser/extension_registry.cc
|
| index 769539e971931a7368dcac90882b5422f25627aa..99b28b8bceafe419cd0156e120fb95fa0a29bfd8 100644
|
| --- a/extensions/browser/extension_registry.cc
|
| +++ b/extensions/browser/extension_registry.cc
|
| @@ -26,6 +26,7 @@ scoped_ptr<ExtensionSet> ExtensionRegistry::GenerateInstalledExtensionsSet()
|
| installed_extensions->InsertAll(disabled_extensions_);
|
| installed_extensions->InsertAll(terminated_extensions_);
|
| installed_extensions->InsertAll(blacklisted_extensions_);
|
| + installed_extensions->InsertAll(locked_extensions_);
|
| return installed_extensions.Pass();
|
| }
|
|
|
| @@ -108,6 +109,11 @@ const Extension* ExtensionRegistry::GetExtensionById(const std::string& id,
|
| if (extension)
|
| return extension;
|
| }
|
| + if (include_mask & LOCKED) {
|
| + const Extension* extension = locked_extensions_.GetByID(lowercase_id);
|
| + if (extension)
|
| + return extension;
|
| + }
|
| return NULL;
|
| }
|
|
|
| @@ -147,11 +153,21 @@ bool ExtensionRegistry::RemoveBlacklisted(const std::string& id) {
|
| return blacklisted_extensions_.Remove(id);
|
| }
|
|
|
| +bool ExtensionRegistry::AddLocked(
|
| + const scoped_refptr<const Extension>& extension) {
|
| + return locked_extensions_.Insert(extension);
|
| +}
|
| +
|
| +bool ExtensionRegistry::RemoveLocked(const std::string& id) {
|
| + return locked_extensions_.Remove(id);
|
| +}
|
| +
|
| void ExtensionRegistry::ClearAll() {
|
| enabled_extensions_.Clear();
|
| disabled_extensions_.Clear();
|
| terminated_extensions_.Clear();
|
| blacklisted_extensions_.Clear();
|
| + locked_extensions_.Clear();
|
| }
|
|
|
| void ExtensionRegistry::SetDisabledModificationCallback(
|
|
|