Lines Matching refs:scheme
24 // don't have to worry about invalid scheme characters since we are comparing
25 // against the canonical scheme of the base.
90 // as relative, as this will just replace the path when the base scheme
100 // See if we've got a scheme, if not, we know this is a relative URL.
101 // BUT: Just because we have a scheme, doesn't make it absolute.
102 // "http:foo.html" is a relative URL with path "foo.html". If the scheme is
104 Component scheme;
106 !ExtractScheme(url, url_len, &scheme) || scheme.len == 0;
112 // Don't allow relative URLs if the base scheme doesn't support it.
121 // If the scheme isn't valid, then it's relative.
122 int scheme_end = scheme.end();
123 for (int i = scheme.begin; i < scheme_end; i++) {
126 // Don't allow relative URLs if the base scheme doesn't support it.
135 // If the scheme is not the same, then we can't count it as relative.
136 if (!AreSchemesEqual(base, base_parsed.scheme, url, scheme))
139 // When the scheme that they both share is not hierarchical, treat the
140 // incoming scheme as absolute (this way with the base of "data:foo",
145 int colon_offset = scheme.end();
148 // supply a scheme. There's no equivalent to e.g. http:index.html.
149 if (CompareSchemeComponent(url, scheme, kFileSystemScheme))
153 // considers to be the scheme. CountConsecutiveSlashes will handle the
165 // Two or more slashes after the scheme we treat as absolute.
367 // should be kept from the original URL is the scheme.
377 // scheme.
378 Parsed relative_parsed; // Everything but the scheme is valid.
407 // not bother to look for a scheme.
458 // they are) means that it's UNC. Two backslashes on any base scheme mean
462 // We also allow Windows absolute drive specs on any scheme (for example
481 // slashes because the generic scheme parsing always extracts a host, but a
495 // Any other double-slashes mean that this is relative to the scheme.