diff options
author | arv@chromium.org <arv@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-06 02:41:45 +0000 |
---|---|---|
committer | arv@chromium.org <arv@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-06 02:41:45 +0000 |
commit | d7f8350075d330a596e6ed6e8eb0380eb4f5ca6c (patch) | |
tree | 344ba986fa174278fe347c8a032f6a99913c525c | |
parent | f58fa27cc3dbf581c074764ec6d64219949f2146 (diff) | |
download | chromium_src-d7f8350075d330a596e6ed6e8eb0380eb4f5ca6c.zip chromium_src-d7f8350075d330a596e6ed6e8eb0380eb4f5ca6c.tar.gz chromium_src-d7f8350075d330a596e6ed6e8eb0380eb4f5ca6c.tar.bz2 |
Revert 35602 - Add a "minimum_chrome_version" key to the manifest.
Broke unit_test on Mac10.5 Tests (dbg)(1)
BUG=24737
Review URL: http://codereview.chromium.org/521036
TBR=aa@chromium.org
Review URL: http://codereview.chromium.org/527003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35604 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/app/chrome_dll_main.cc | 3 | ||||
-rw-r--r-- | chrome/common/extensions/docs/manifest.html | 12 | ||||
-rw-r--r-- | chrome/common/extensions/docs/static/manifest.html | 8 | ||||
-rw-r--r-- | chrome/common/extensions/extension.cc | 43 | ||||
-rw-r--r-- | chrome/common/extensions/extension_constants.cc | 13 | ||||
-rw-r--r-- | chrome/common/extensions/extension_constants.h | 3 | ||||
-rw-r--r-- | chrome/common/extensions/extension_unittest.cc | 20 |
7 files changed, 8 insertions, 94 deletions
diff --git a/chrome/app/chrome_dll_main.cc b/chrome/app/chrome_dll_main.cc index 8ef4314..b47c82e 100644 --- a/chrome/app/chrome_dll_main.cc +++ b/chrome/app/chrome_dll_main.cc @@ -352,8 +352,7 @@ bool SubprocessNeedsResourceBundle(const std::string& process_type) { process_type == switches::kZygoteProcess || #endif process_type == switches::kRendererProcess || - process_type == switches::kExtensionProcess || - process_type == switches::kUtilityProcess; + process_type == switches::kExtensionProcess; } } // namespace diff --git a/chrome/common/extensions/docs/manifest.html b/chrome/common/extensions/docs/manifest.html index d6c3e40..8383376 100644 --- a/chrome/common/extensions/docs/manifest.html +++ b/chrome/common/extensions/docs/manifest.html @@ -210,8 +210,6 @@ </li><li> <a href="#name">name</a> </li><li> - <a href="#minimum_chrome_version">Minimum Chrome Version</a> - </li><li> <a href="#permissions">permissions</a> </li><li> <a href="#version">version</a> @@ -297,7 +295,6 @@ are <b>name</b> and <b>version</b>. "<a href="background_pages.html">background_page</a>": "<em>aFile</em>.html", "<a href="override.html">chrome_url_overrides</a>": {...}, "<a href="content_scripts.html">content_scripts</a>": [...], - "<a href="#minimum_chrome_version">minimum_chrome_version</a>": "x.y", "<a href="options.html">options_page</a>": "<em>aFile</em>.html", "<a href="#permissions">permissions</a>": [...], "<a href="npapi.html">plugins</a>": [...], @@ -373,14 +370,7 @@ extension management UI, and the <a href="https://chrome.google.com/extensions">extension gallery</a>. </p> -<h3 id="minimum_chrome_version">Minimum Chrome Version</h3> - -<p> -The version of Google Chrome that your extension requires, if any. -The format for this string is the same as for the <a href="#version">version -field</a>. - -</p><h3 id="permissions">permissions</h3> +<h3 id="permissions">permissions</h3> <p> An array of permissions that the extension might use. diff --git a/chrome/common/extensions/docs/static/manifest.html b/chrome/common/extensions/docs/static/manifest.html index 802b26e..dfa2c9d 100644 --- a/chrome/common/extensions/docs/static/manifest.html +++ b/chrome/common/extensions/docs/static/manifest.html @@ -36,7 +36,6 @@ are <b>name</b> and <b>version</b>. "<a href="background_pages.html">background_page</a>": "<em>aFile</em>.html", "<a href="override.html">chrome_url_overrides</a>": {...}, "<a href="content_scripts.html">content_scripts</a>": [...], - "<a href="#minimum_chrome_version">minimum_chrome_version</a>": "x.y", "<a href="options.html">options_page</a>": "<em>aFile</em>.html", "<a href="#permissions">permissions</a>": [...], "<a href="npapi.html">plugins</a>": [...], @@ -113,13 +112,6 @@ extension management UI, and the <a href="https://chrome.google.com/extensions">extension gallery</a>. </p> -<h3 id="minimum_chrome_version">Minimum Chrome Version</h3> - -<p> -The version of Google Chrome that your extension requires, if any. -The format for this string is the same as for the <a href="#version">version -field</a>. - <h3 id="permissions">permissions</h3> <p> diff --git a/chrome/common/extensions/extension.cc b/chrome/common/extensions/extension.cc index 5dfdf1c..9097086 100644 --- a/chrome/common/extensions/extension.cc +++ b/chrome/common/extensions/extension.cc @@ -4,14 +4,12 @@ #include "chrome/common/extensions/extension.h" -#include "app/l10n_util.h" #include "app/resource_bundle.h" #include "base/base64.h" #include "base/basictypes.h" #include "base/command_line.h" #include "base/file_path.h" #include "base/file_util.h" -#include "base/file_version_info.h" #include "base/logging.h" #include "base/string_util.h" #include "base/stl_util-inl.h" @@ -26,7 +24,6 @@ #include "chrome/common/extensions/user_script.h" #include "chrome/common/notification_service.h" #include "chrome/common/url_constants.h" -#include "grit/chromium_strings.h" #include "webkit/glue/image_decoder.h" #if defined(OS_WIN) @@ -760,46 +757,6 @@ bool Extension::InitFromValue(const DictionaryValue& source, bool require_id, } } - // Validate minimum Chrome version (if present). We don't need to store this, - // since the extension is not valid if it is incorrect. - if (source.HasKey(keys::kMinimumChromeVersion)) { - std::string minimum_version_string; - if (!source.GetString(keys::kMinimumChromeVersion, - &minimum_version_string)) { - *error = errors::kInvalidMinimumChromeVersion; - return false; - } - - scoped_ptr<Version> minimum_version( - Version::GetVersionFromString(minimum_version_string)); - if (!minimum_version.get()) { - *error = errors::kInvalidMinimumChromeVersion; - return false; - } - - scoped_ptr<FileVersionInfo> current_version_info( - FileVersionInfo::CreateFileVersionInfoForCurrentModule()); - if (!current_version_info.get()) { - DCHECK(false); - return false; - } - - scoped_ptr<Version> current_version( - Version::GetVersionFromString(current_version_info->file_version())); - if (!current_version.get()) { - DCHECK(false); - return false; - } - - if (current_version->CompareTo(*minimum_version) < 0) { - *error = ExtensionErrorUtils::FormatErrorMessage( - errors::kChromeVersionTooLow, - l10n_util::GetStringUTF8(IDS_PRODUCT_NAME), - minimum_version_string); - return false; - } - } - // Initialize converted_from_user_script (if present) source.GetBoolean(keys::kConvertedFromUserScript, &converted_from_user_script_); diff --git a/chrome/common/extensions/extension_constants.cc b/chrome/common/extensions/extension_constants.cc index 825fc2e..3deaf20 100644 --- a/chrome/common/extensions/extension_constants.cc +++ b/chrome/common/extensions/extension_constants.cc @@ -19,7 +19,6 @@ const wchar_t* kDescription = L"description"; const wchar_t* kIcons = L"icons"; const wchar_t* kJs = L"js"; const wchar_t* kMatches = L"matches"; -const wchar_t* kMinimumChromeVersion = L"minimum_chrome_version"; const wchar_t* kIncludeGlobs = L"include_globs"; const wchar_t* kExcludeGlobs = L"exclude_globs"; const wchar_t* kName = L"name"; @@ -68,8 +67,6 @@ const char* kPageActionTypePermanent = "permanent"; // printf because we want to unit test them and scanf is hard to make // cross-platform. namespace extension_manifest_errors { -const char* kChromeVersionTooLow = - "This extension requires * version * or greater."; const char* kInvalidAllFrames = "Invalid value for 'content_scripts[*].all_frames'."; const char* kInvalidBrowserAction = @@ -83,7 +80,7 @@ const char* kInvalidContentScriptsList = const char* kInvalidCss = "Invalid value for 'content_scripts[*].css[*]'."; const char* kInvalidCssList = - "Required value 'content_scripts[*].css' is invalid."; + "Required value 'content_scripts[*].css is invalid."; const char* kInvalidDescription = "Invalid value for 'description'."; const char* kInvalidGlobList = @@ -97,20 +94,18 @@ const char* kInvalidIconPath = const char* kInvalidJs = "Invalid value for 'content_scripts[*].js[*]'."; const char* kInvalidJsList = - "Required value 'content_scripts[*].js' is invalid."; + "Required value 'content_scripts[*].js is invalid."; const char* kInvalidKey = "Value 'key' is missing or invalid."; const char* kInvalidManifest = "Manifest file is invalid."; const char* kInvalidMatchCount = - "Invalid value for 'content_scripts[*].matches'. There must be at least" - "one match specified."; + "Invalid value for 'content_scripts[*].matches. There must be at least one " + "match specified."; const char* kInvalidMatch = "Invalid value for 'content_scripts[*].matches[*]'."; const char* kInvalidMatches = "Required value 'content_scripts[*].matches' is missing or invalid."; -const char* kInvalidMinimumChromeVersion = - "Invalid value for 'minimum_chrome_version'."; const char* kInvalidName = "Required value 'name' is missing or invalid."; const char* kInvalidPageAction = diff --git a/chrome/common/extensions/extension_constants.h b/chrome/common/extensions/extension_constants.h index 4d9ef84..a83c2d8 100644 --- a/chrome/common/extensions/extension_constants.h +++ b/chrome/common/extensions/extension_constants.h @@ -10,7 +10,6 @@ namespace extension_manifest_keys { extern const wchar_t* kAllFrames; extern const wchar_t* kBackground; extern const wchar_t* kBrowserAction; - extern const wchar_t* kMinimumChromeVersion; extern const wchar_t* kChromeURLOverrides; extern const wchar_t* kContentScripts; extern const wchar_t* kConvertedFromUserScript; @@ -67,7 +66,6 @@ namespace extension_manifest_values { // Error messages returned from Extension::InitFromValue(). namespace extension_manifest_errors { - extern const char* kChromeVersionTooLow; extern const char* kInvalidBrowserAction; extern const char* kInvalidChromeURLOverrides; extern const char* kInvalidContentScript; @@ -86,7 +84,6 @@ namespace extension_manifest_errors { extern const char* kInvalidMatchCount; extern const char* kInvalidMatch; extern const char* kInvalidMatches; - extern const char* kInvalidMinimumChromeVersion; extern const char* kInvalidName; extern const char* kInvalidPlugins; extern const char* kInvalidPluginsPath; diff --git a/chrome/common/extensions/extension_unittest.cc b/chrome/common/extensions/extension_unittest.cc index 677e1f8..db992eb 100644 --- a/chrome/common/extensions/extension_unittest.cc +++ b/chrome/common/extensions/extension_unittest.cc @@ -23,7 +23,8 @@ namespace errors = extension_manifest_errors; class ExtensionTest : public testing::Test { }; -TEST(ExtensionTest, InitFromValueInvalid) { +// TODO(mad): http://crbug.com/26214 +TEST(ExtensionTest, DISABLED_InitFromValueInvalid) { #if defined(OS_WIN) FilePath path(FILE_PATH_LITERAL("c:\\foo")); #elif defined(OS_POSIX) @@ -250,17 +251,6 @@ TEST(ExtensionTest, InitFromValueInvalid) { input_value->Set(keys::kDefaultLocale, Value::CreateStringValue("")); EXPECT_FALSE(extension.InitFromValue(*input_value, true, &error)); EXPECT_TRUE(MatchPatternASCII(error, errors::kInvalidDefaultLocale)); - - // Test invalid minimum_chrome_version. - input_value.reset(static_cast<DictionaryValue*>(valid_value->DeepCopy())); - input_value->Set(keys::kMinimumChromeVersion, Value::CreateIntegerValue(42)); - EXPECT_FALSE(extension.InitFromValue(*input_value, true, &error)); - EXPECT_TRUE(MatchPatternASCII(error, errors::kInvalidMinimumChromeVersion)); - - input_value->Set(keys::kMinimumChromeVersion, - Value::CreateStringValue("88.8")); - EXPECT_FALSE(extension.InitFromValue(*input_value, true, &error)); - EXPECT_TRUE(MatchPatternASCII(error, errors::kChromeVersionTooLow)); } TEST(ExtensionTest, InitFromValueValid) { @@ -291,12 +281,6 @@ TEST(ExtensionTest, InitFromValueValid) { EXPECT_EQ("", error); EXPECT_EQ("chrome-extension", extension.options_url().scheme()); EXPECT_EQ("/options.html", extension.options_url().path()); - - // Test with a minimum_chrome_version. - input_value.SetString(keys::kMinimumChromeVersion, "1.0"); - EXPECT_TRUE(extension.InitFromValue(input_value, false, &error)); - EXPECT_EQ("", error); - // The minimum chrome version is not stored in the Extension object. } TEST(ExtensionTest, GetResourceURLAndPath) { |