Add 'from_webstore' state to Extensions, so renderer code can enforce CWS restrictions.
Review URL: http://codereview.chromium.org/7384010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92752 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc
index c0ce5ecd..ec155ab 100644
--- a/chrome/browser/extensions/extension_service.cc
+++ b/chrome/browser/extensions/extension_service.cc
@@ -466,10 +466,6 @@
   return (referrer_valid && download_valid);
 }
 
-bool ExtensionService::IsFromWebStore(const std::string& id) const {
-  return extension_prefs_->IsFromWebStore(id);
-}
-
 bool ExtensionService::IsDownloadFromMiniGallery(const GURL& download_url) {
   return StartsWithASCII(download_url.spec(),
                          extension_urls::kMiniGalleryDownloadPrefix,
@@ -1106,6 +1102,8 @@
         flags |= Extension::STRICT_ERROR_CHECKS;
       if (extension_prefs_->AllowFileAccess(info->extension_id))
         flags |= Extension::ALLOW_FILE_ACCESS;
+      if (extension_prefs_->IsFromWebStore(info->extension_id))
+        flags |= Extension::FROM_WEBSTORE;
       std::string error;
       scoped_refptr<const Extension> extension(
           extension_file_util::LoadExtension(
@@ -1257,6 +1255,8 @@
       flags |= Extension::STRICT_ERROR_CHECKS;
     if (extension_prefs_->AllowFileAccess(info.extension_id))
       flags |= Extension::ALLOW_FILE_ACCESS;
+    if (extension_prefs_->IsFromWebStore(info.extension_id))
+      flags |= Extension::FROM_WEBSTORE;
     extension = Extension::Create(
         info.extension_path,
         info.extension_location,