Index: chrome/browser/extensions/install_verifier.cc |
diff --git a/chrome/browser/extensions/install_verifier.cc b/chrome/browser/extensions/install_verifier.cc |
index 88b8cd62706211ed785c6b72be0da4c1ab6eb3f5..53fb8ec9419d5147b54647c4cbe8dd74fdbb1732 100644 |
--- a/chrome/browser/extensions/install_verifier.cc |
+++ b/chrome/browser/extensions/install_verifier.cc |
@@ -82,35 +82,10 @@ void InstallVerifier::Init() { |
} else { |
UMA_HISTOGRAM_BOOLEAN("InstallVerifier.InitNoSignature", true); |
} |
+} |
- if (!signature_.get() && ShouldFetchSignature()) { |
- // We didn't have any signature but are in fetch mode, so do a request for |
- // a signature if needed. |
- scoped_ptr<ExtensionPrefs::ExtensionsInfo> all_info = |
- prefs_->GetInstalledExtensionsInfo(); |
- ExtensionIdSet to_add; |
- if (all_info.get()) { |
- for (ExtensionPrefs::ExtensionsInfo::const_iterator i = all_info->begin(); |
- i != all_info->end(); ++i) { |
- const ExtensionInfo& info = **i; |
- const base::DictionaryValue* dictionary = info.extension_manifest.get(); |
- if (dictionary && ManifestURL::UpdatesFromGallery(dictionary)) { |
- Manifest manifest(info.extension_location, |
- scoped_ptr<DictionaryValue>( |
- dictionary->DeepCopy())); |
- if (manifest.is_extension()) |
- to_add.insert(info.extension_id); |
- } |
- } |
- } |
- if (to_add.empty()) { |
- // Write an empty signature so we don't have to redo this at next Init. |
- signature_.reset(new InstallSignature()); |
- SaveToPrefs(); |
- } else { |
- AddMany(to_add, AddResultCallback()); |
- } |
- } |
+bool InstallVerifier::NeedsBootstrap() { |
+ return signature_.get() == NULL && ShouldFetchSignature(); |
} |
void InstallVerifier::Add(const std::string& id, |
@@ -122,8 +97,11 @@ void InstallVerifier::Add(const std::string& id, |
void InstallVerifier::AddMany(const ExtensionIdSet& ids, |
const AddResultCallback& callback) { |
- if (!ShouldFetchSignature()) |
+ if (!ShouldFetchSignature()) { |
+ if (!callback.is_null()) |
+ callback.Run(true); |
return; |
+ } |
if (signature_.get()) { |
ExtensionIdSet not_allowed_yet = |
@@ -202,7 +180,7 @@ bool InstallVerifier::MustRemainDisabled(const Extension* extension, |
bool verified = |
FromStore(extension) && |
- IsVerified(extension->id()) && |
+ (signature_.get() == NULL || IsVerified(extension->id())) && |
Finnur
2013/12/16 14:21:51
Wait... it is verified if there's no signature? Wh
asargent_no_longer_on_chrome
2013/12/16 18:47:10
It's temporarily allowed - the idea is that if som
|
!ContainsKey(InstallSigner::GetForcedNotFromWebstore(), extension->id()); |
if (!verified) { |
@@ -347,16 +325,8 @@ void InstallVerifier::SignatureCallback( |
provisional_, signature_->ids); |
} |
- // See if we were able to sign all of |ids|. |
- ExtensionIdSet not_allowed = |
- base::STLSetDifference<ExtensionIdSet>(operation->ids, |
- signature_->ids); |
- |
- UMA_HISTOGRAM_COUNTS_100("InstallVerifier.CallbackNotAllowed", |
- not_allowed.size()); |
asargent_no_longer_on_chrome
2013/12/14 00:42:39
note: I removed this block of code because it was
|
- |
if (!operation->callback.is_null()) |
- operation->callback.Run(not_allowed.empty()); |
asargent_no_longer_on_chrome
2013/12/14 00:42:39
This got updated to return the success of the netw
|
+ operation->callback.Run(success); |
} |
if (!operation_queue_.empty()) |