summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions/user_script.cc
diff options
context:
space:
mode:
authormpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-30 21:52:07 +0000
committermpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-30 21:52:07 +0000
commit7715d63a3b9da9c149cdd0f544dbdf4cb13a8ed7 (patch)
treec018df57b687d9b3a6c8e0d06d297ca2e6d18c30 /chrome/common/extensions/user_script.cc
parentf33b82f2e0be4b3c739f3e51f34b680080e0150e (diff)
downloadchromium_src-7715d63a3b9da9c149cdd0f544dbdf4cb13a8ed7.zip
chromium_src-7715d63a3b9da9c149cdd0f544dbdf4cb13a8ed7.tar.gz
chromium_src-7715d63a3b9da9c149cdd0f544dbdf4cb13a8ed7.tar.bz2
Add a wildcard scheme and a special 'all_urls' pattern to URLPattern.
BUG=47179 Review URL: http://codereview.chromium.org/2884008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51295 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions/user_script.cc')
-rw-r--r--chrome/common/extensions/user_script.cc11
1 files changed, 10 insertions, 1 deletions
diff --git a/chrome/common/extensions/user_script.cc b/chrome/common/extensions/user_script.cc
index b55a10c..c568e8e 100644
--- a/chrome/common/extensions/user_script.cc
+++ b/chrome/common/extensions/user_script.cc
@@ -31,8 +31,14 @@ static bool UrlMatchesGlobs(const std::vector<std::string>* globs,
}
}
+// static
const char UserScript::kFileExtension[] = ".user.js";
+// static
+const int UserScript::kValidUserScriptSchemes =
+ URLPattern::SCHEME_HTTP | URLPattern::SCHEME_HTTPS |
+ URLPattern::SCHEME_FILE | URLPattern::SCHEME_FTP;
+
bool UserScript::HasUserScriptFileExtension(const GURL& url) {
return EndsWith(url.ExtractFileName(), kFileExtension, false);
}
@@ -98,6 +104,7 @@ void UserScript::Pickle(::Pickle* pickle) const {
pickle->WriteSize(url_patterns_.size());
for (PatternList::const_iterator pattern = url_patterns_.begin();
pattern != url_patterns_.end(); ++pattern) {
+ pickle->WriteInt(pattern->valid_schemes());
pickle->WriteString(pattern->GetAsString());
}
@@ -153,8 +160,10 @@ void UserScript::Unpickle(const ::Pickle& pickle, void** iter) {
url_patterns_.clear();
for (size_t i = 0; i < num_patterns; ++i) {
+ int valid_schemes;
+ CHECK(pickle.ReadInt(iter, &valid_schemes));
std::string pattern_str;
- URLPattern pattern;
+ URLPattern pattern(valid_schemes);
CHECK(pickle.ReadString(iter, &pattern_str));
CHECK(pattern.Parse(pattern_str));
url_patterns_.push_back(pattern);