Index: chrome/browser/extensions/stateful_external_extension_provider.cc |
diff --git a/chrome/browser/extensions/stateful_external_extension_provider.cc b/chrome/browser/extensions/stateful_external_extension_provider.cc |
index d922db83c8639729ac2fde4449b6650928b93f79..fd1a42af1eb3328390ada2b6d3d3ac39b7254955 100644 |
--- a/chrome/browser/extensions/stateful_external_extension_provider.cc |
+++ b/chrome/browser/extensions/stateful_external_extension_provider.cc |
@@ -10,6 +10,7 @@ |
#include "base/path_service.h" |
#include "base/values.h" |
#include "base/version.h" |
+#include "chrome/browser/browser_thread.h" |
namespace { |
@@ -27,13 +28,17 @@ StatefulExternalExtensionProvider::StatefulExternalExtensionProvider( |
Extension::Location download_location) |
: crx_location_(crx_location), |
download_location_(download_location) { |
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
} |
StatefulExternalExtensionProvider::~StatefulExternalExtensionProvider() { |
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
} |
void StatefulExternalExtensionProvider::VisitRegisteredExtension( |
Visitor* visitor) const { |
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); |
+ DCHECK(prefs_.get()); |
for (DictionaryValue::key_iterator i = prefs_->begin_keys(); |
i != prefs_->end_keys(); ++i) { |
const std::string& extension_id = *i; |
@@ -120,12 +125,16 @@ void StatefulExternalExtensionProvider::VisitRegisteredExtension( |
bool StatefulExternalExtensionProvider::HasExtension( |
const std::string& id) const { |
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); |
+ DCHECK(prefs_.get()); |
return prefs_->HasKey(id); |
} |
bool StatefulExternalExtensionProvider::GetExtensionDetails( |
const std::string& id, Extension::Location* location, |
scoped_ptr<Version>* version) const { |
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); |
+ DCHECK(prefs_.get()); |
DictionaryValue* extension = NULL; |
if (!prefs_->GetDictionary(id, &extension)) |
return false; |
@@ -154,3 +163,7 @@ bool StatefulExternalExtensionProvider::GetExtensionDetails( |
return true; |
} |
+ |
+void StatefulExternalExtensionProvider::set_prefs(DictionaryValue* prefs) { |
+ prefs_.reset(prefs); |
+} |