| Index: chrome/common/extensions/url_pattern.h
 | 
| diff --git a/chrome/common/extensions/url_pattern.h b/chrome/common/extensions/url_pattern.h
 | 
| index 08d76b03c014974df45a8ac172d4e4f21e7c40c3..f69cd7ab22ee64d236a5814bd3f895ac4300098a 100644
 | 
| --- a/chrome/common/extensions/url_pattern.h
 | 
| +++ b/chrome/common/extensions/url_pattern.h
 | 
| @@ -23,7 +23,6 @@
 | 
|  // - http://*/*
 | 
|  // - http://*/foo*
 | 
|  // - https://*.google.com/foo*bar
 | 
| -// - chrome://foo/bar
 | 
|  // - file://monkey*
 | 
|  // - http://127.0.0.1/*
 | 
|  //
 | 
| @@ -33,6 +32,7 @@
 | 
|  // - http://foo.*.bar/baz -- * must be first component
 | 
|  // - http:/bar -- scheme separator not found
 | 
|  // - foo://* -- invalid scheme
 | 
| +// - chrome:// -- we don't support chrome internal URLs
 | 
|  //
 | 
|  // Design rationale:
 | 
|  // * We need to be able to tell users what 'sites' a given URLPattern will
 | 
| @@ -42,8 +42,7 @@
 | 
|  //   patterns to URLPatterns as possible. Greasemonkey @include patterns are
 | 
|  //   simple globs, so this won't be perfect.
 | 
|  // * Although we would like to support any scheme, it isn't clear what to tell
 | 
| -//   users about URLPatterns that affect data or javascript URLs, and saying
 | 
| -//   something useful about chrome-extension URLs is more work, so those are
 | 
| +//   users about URLPatterns that affect data or javascript URLs, so those are
 | 
|  //   left out for now.
 | 
|  //
 | 
|  // From a 2008-ish crawl of userscripts.org, the following patterns were found
 | 
| @@ -70,6 +69,10 @@
 | 
|  // than the original glob, which is probably better than nothing.
 | 
|  class URLPattern {
 | 
|   public:
 | 
| +  // Returns true if the specified scheme can be used in URL patterns, and false
 | 
| +  // otherwise.
 | 
| +  static bool IsValidScheme(const std::string& scheme);
 | 
| +
 | 
|    URLPattern() : match_subdomains_(false) {}
 | 
|  
 | 
|    // Initializes this instance by parsing the provided string. On failure, the
 | 
| 
 |