| Index: chrome/common/content_settings_pattern_parser.cc
|
| diff --git a/chrome/common/content_settings_pattern_parser.cc b/chrome/common/content_settings_pattern_parser.cc
|
| index 6cfb4bb7b2e9fa816754ecc855a0d1f81a278c58..82dbb5723d429435ab76bd72b41b38ce14a90a7b 100644
|
| --- a/chrome/common/content_settings_pattern_parser.cc
|
| +++ b/chrome/common/content_settings_pattern_parser.cc
|
| @@ -5,14 +5,16 @@
|
| #include "chrome/common/content_settings_pattern_parser.h"
|
|
|
| #include "base/strings/string_util.h"
|
| -#include "chrome/common/url_constants.h"
|
| -#include "extensions/common/constants.h"
|
| -#include "net/base/net_util.h"
|
| -#include "url/gurl.h"
|
| -#include "url/url_canon.h"
|
| +#include "url/url_constants.h"
|
|
|
| namespace {
|
|
|
| +const char* kDomainWildcard = "[*.]";
|
| +const size_t kDomainWildcardLength = 4;
|
| +const char* kHostWildcard = "*";
|
| +const char* kPathWildcard = "*";
|
| +const char* kPortWildcard = "*";
|
| +const char* kSchemeWildcard = "*";
|
| const char* kUrlPathSeparator = "/";
|
| const char* kUrlPortSeparator = ":";
|
|
|
| @@ -33,20 +35,8 @@ class Component {
|
|
|
| namespace content_settings {
|
|
|
| -const char* PatternParser::kDomainWildcard = "[*.]";
|
| -
|
| -const size_t PatternParser::kDomainWildcardLength = 4;
|
| -
|
| -const char* PatternParser::kSchemeWildcard = "*";
|
| -
|
| -const char* PatternParser::kHostWildcard = "*";
|
| -
|
| -const char* PatternParser::kPortWildcard = "*";
|
| -
|
| -const char* PatternParser::kPathWildcard = "*";
|
| -
|
| -// static
|
| -void PatternParser::Parse(const std::string& pattern_spec,
|
| +void PatternParser::Parse(const char* extension_scheme,
|
| + const std::string& pattern_spec,
|
| ContentSettingsPattern::BuilderInterface* builder) {
|
| if (pattern_spec == "*") {
|
| builder->WithSchemeWildcard();
|
| @@ -69,11 +59,11 @@ void PatternParser::Parse(const std::string& pattern_spec,
|
| return;
|
|
|
| // Test if a scheme pattern is in the spec.
|
| - current_pos = pattern_spec.find(
|
| - std::string(url::kStandardSchemeSeparator), start);
|
| + const std::string standard_scheme_separator(url::kStandardSchemeSeparator);
|
| + current_pos = pattern_spec.find(standard_scheme_separator, start);
|
| if (current_pos != std::string::npos) {
|
| scheme_component = Component(start, current_pos);
|
| - start = current_pos + strlen(url::kStandardSchemeSeparator);
|
| + start = current_pos + standard_scheme_separator.size();
|
| current_pos = start;
|
| } else {
|
| current_pos = start;
|
| @@ -172,8 +162,8 @@ void PatternParser::Parse(const std::string& pattern_spec,
|
| builder->WithPort(port);
|
| }
|
| } else {
|
| - if (scheme != std::string(extensions::kExtensionScheme) &&
|
| - scheme != std::string(url::kFileScheme))
|
| + if (scheme != extension_scheme &&
|
| + scheme != url::kFileScheme)
|
| builder->WithPortWildcard();
|
| }
|
|
|
| @@ -187,8 +177,8 @@ void PatternParser::Parse(const std::string& pattern_spec,
|
| }
|
| }
|
|
|
| -// static
|
| std::string PatternParser::ToString(
|
| + const char* extension_scheme,
|
| const ContentSettingsPattern::PatternParts& parts) {
|
| // Return the most compact form to support legacy code and legacy pattern
|
| // strings.
|
| @@ -217,7 +207,7 @@ std::string PatternParser::ToString(
|
| }
|
| str += parts.host;
|
|
|
| - if (parts.scheme == std::string(extensions::kExtensionScheme)) {
|
| + if (parts.scheme == extension_scheme) {
|
| str += parts.path.empty() ? std::string(kUrlPathSeparator) : parts.path;
|
| return str;
|
| }
|
|
|