Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3857)

Unified Diff: chrome/common/extensions/extension.cc

Issue 8885022: Move URLPattern::ParseOption into a field. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: more minor sprucing Created 9 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/common/extensions/extension.h ('k') | chrome/common/extensions/extension_messages.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/common/extensions/extension.cc
diff --git a/chrome/common/extensions/extension.cc b/chrome/common/extensions/extension.cc
index 1690e4431cc9c4d5770e6f98e4381bf3143afaf4..f4c683d62aaa76003246f376c9973622035ab582 100644
--- a/chrome/common/extensions/extension.cc
+++ b/chrome/common/extensions/extension.cc
@@ -283,8 +283,8 @@ void Extension::OverrideLaunchUrl(const GURL& override_url) {
launch_web_url_ = new_url.spec();
- URLPattern pattern(kValidWebExtentSchemes);
- pattern.Parse(new_url.spec(), URLPattern::ERROR_ON_PORTS);
+ URLPattern pattern(URLPattern::ERROR_ON_PORTS, kValidWebExtentSchemes);
+ pattern.Parse(new_url.spec());
pattern.SetPath(pattern.path() + '*');
extent_.AddPattern(pattern);
}
@@ -387,7 +387,7 @@ bool Extension::LoadUserScriptHelper(const DictionaryValue* content_script,
std::string* error,
UserScript* result) {
// When strict error checks are enabled, make URL pattern parsing strict.
- URLPattern::ParseOption parse_strictness =
+ URLPattern::ParseOption parse_option =
(flags & STRICT_ERROR_CHECKS ? URLPattern::ERROR_ON_PORTS
: URLPattern::IGNORE_PORTS);
@@ -448,12 +448,11 @@ bool Extension::LoadUserScriptHelper(const DictionaryValue* content_script,
return false;
}
- URLPattern pattern(UserScript::kValidUserScriptSchemes);
+ URLPattern pattern(parse_option, UserScript::kValidUserScriptSchemes);
if (CanExecuteScriptEverywhere())
pattern.SetValidSchemes(URLPattern::SCHEME_ALL);
- URLPattern::ParseResult parse_result = pattern.Parse(match_str,
- parse_strictness);
+ URLPattern::ParseResult parse_result = pattern.Parse(match_str);
if (parse_result != URLPattern::PARSE_SUCCESS) {
*error = ExtensionErrorUtils::FormatErrorMessage(
errors::kInvalidMatch,
@@ -495,11 +494,10 @@ bool Extension::LoadUserScriptHelper(const DictionaryValue* content_script,
return false;
}
- URLPattern pattern(UserScript::kValidUserScriptSchemes);
+ URLPattern pattern(parse_option, UserScript::kValidUserScriptSchemes);
if (CanExecuteScriptEverywhere())
pattern.SetValidSchemes(URLPattern::SCHEME_ALL);
- URLPattern::ParseResult parse_result = pattern.Parse(match_str,
- parse_strictness);
+ URLPattern::ParseResult parse_result = pattern.Parse(match_str);
if (parse_result != URLPattern::PARSE_SUCCESS) {
*error = ExtensionErrorUtils::FormatErrorMessage(
errors::kInvalidExcludeMatch,
@@ -799,9 +797,9 @@ FileBrowserHandler* Extension::LoadFileBrowserHandler(
return NULL;
}
StringToLowerASCII(&filter);
- URLPattern pattern(URLPattern::SCHEME_FILESYSTEM);
- if (pattern.Parse(filter, URLPattern::ERROR_ON_PORTS) !=
- URLPattern::PARSE_SUCCESS) {
+ URLPattern pattern(URLPattern::ERROR_ON_PORTS,
+ URLPattern::SCHEME_FILESYSTEM);
+ if (pattern.Parse(filter) != URLPattern::PARSE_SUCCESS) {
*error = ExtensionErrorUtils::FormatErrorMessage(
errors::kInvalidURLPatternError, filter);
return NULL;
@@ -884,7 +882,7 @@ bool Extension::LoadExtent(const extensions::Manifest* manifest,
URLPatternSet* extent,
const char* list_error,
const char* value_error,
- URLPattern::ParseOption parse_strictness,
+ URLPattern::ParseOption parse_option,
std::string* error) {
Value* temp = NULL;
if (!manifest->Get(key, &temp))
@@ -905,12 +903,11 @@ bool Extension::LoadExtent(const extensions::Manifest* manifest,
return false;
}
- URLPattern pattern(kValidWebExtentSchemes);
- URLPattern::ParseResult parse_result = pattern.Parse(pattern_string,
- parse_strictness);
+ URLPattern pattern(parse_option, kValidWebExtentSchemes);
+ URLPattern::ParseResult parse_result = pattern.Parse(pattern_string);
if (parse_result == URLPattern::PARSE_ERROR_EMPTY_PATH) {
pattern_string += "/";
- parse_result = pattern.Parse(pattern_string, parse_strictness);
+ parse_result = pattern.Parse(pattern_string);
}
if (parse_result != URLPattern::PARSE_SUCCESS) {
@@ -996,7 +993,7 @@ bool Extension::LoadLaunchURL(const extensions::Manifest* manifest,
// Ensure the launch URL is a valid absolute URL and web extent scheme.
GURL url(launch_url);
- URLPattern pattern(kValidWebExtentSchemes);
+ URLPattern pattern(URLPattern::ERROR_ON_PORTS, kValidWebExtentSchemes);
if (!url.is_valid() || !pattern.SetScheme(url.scheme())) {
*error = errors::kInvalidLaunchWebURL;
return false;
@@ -1011,7 +1008,7 @@ bool Extension::LoadLaunchURL(const extensions::Manifest* manifest,
// If there is no extent, we default the extent based on the launch URL.
if (web_extent().is_empty() && !launch_web_url().empty()) {
GURL launch_url(launch_web_url());
- URLPattern pattern(kValidWebExtentSchemes);
+ URLPattern pattern(URLPattern::ERROR_ON_PORTS, kValidWebExtentSchemes);
if (!pattern.SetScheme("*")) {
*error = errors::kInvalidLaunchWebURL;
return false;
@@ -1391,7 +1388,7 @@ bool Extension::InitFromValue(extensions::Manifest* manifest, int flags,
return false;
// When strict error checks are enabled, make URL pattern parsing strict.
- URLPattern::ParseOption parse_strictness =
+ URLPattern::ParseOption parse_option =
(flags & STRICT_ERROR_CHECKS ? URLPattern::ERROR_ON_PORTS
: URLPattern::IGNORE_PORTS);
@@ -1479,7 +1476,7 @@ bool Extension::InitFromValue(extensions::Manifest* manifest, int flags,
(!LoadExtent(manifest_.get(), keys::kWebURLs,
&extent_,
errors::kInvalidWebURLs, errors::kInvalidWebURL,
- parse_strictness, error) ||
+ parse_option, error) ||
!LoadLaunchURL(manifest_.get(), error) ||
!LoadLaunchContainer(manifest_.get(), error))) {
return false;
@@ -2524,7 +2521,7 @@ bool Extension::ParsePermissions(const extensions::Manifest* source,
URLPatternSet* host_permissions) {
if (source->HasKey(key)) {
// When strict error checks are enabled, make URL pattern parsing strict.
- URLPattern::ParseOption parse_strictness =
+ URLPattern::ParseOption parse_option =
(flags & STRICT_ERROR_CHECKS ? URLPattern::ERROR_ON_PORTS
: URLPattern::IGNORE_PORTS);
ListValue* permissions = NULL;
@@ -2554,11 +2551,11 @@ bool Extension::ParsePermissions(const extensions::Manifest* source,
}
// Check if it's a host pattern permission.
- URLPattern pattern = URLPattern(CanExecuteScriptEverywhere() ?
- URLPattern::SCHEME_ALL : kValidHostPermissionSchemes);
+ const int kAllowedSchemes = CanExecuteScriptEverywhere() ?
+ URLPattern::SCHEME_ALL : kValidHostPermissionSchemes;
- URLPattern::ParseResult parse_result = pattern.Parse(permission_str,
- parse_strictness);
+ URLPattern pattern = URLPattern(parse_option, kAllowedSchemes);
+ URLPattern::ParseResult parse_result = pattern.Parse(permission_str);
if (parse_result == URLPattern::PARSE_SUCCESS) {
if (!CanSpecifyHostPermission(pattern, *api_permissions)) {
*error = ExtensionErrorUtils::FormatErrorMessage(
@@ -2906,7 +2903,8 @@ bool Extension::OverlapsWithOrigin(const GURL& origin) const {
return false;
// Note: patterns and extents ignore port numbers.
- URLPattern origin_only_pattern(kValidWebExtentSchemes);
+ URLPattern origin_only_pattern(URLPattern::ERROR_ON_PORTS,
+ kValidWebExtentSchemes);
if (!origin_only_pattern.SetScheme(origin.scheme()))
return false;
origin_only_pattern.SetHost(origin.host());
« no previous file with comments | « chrome/common/extensions/extension.h ('k') | chrome/common/extensions/extension_messages.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698