diff options
| author | Brian Anderson <banderson@mozilla.com> | 2012-08-05 13:48:26 -0700 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-08-05 13:48:29 -0700 |
| commit | dbf58716dfe1dd502ea37d5a613847406a9736c9 (patch) | |
| tree | 319410b82bf670fab4d96f7dca50157733fd196f /src/libstd | |
| parent | a52f6d26db810b947f5ff515ffae18a31e9479c0 (diff) | |
std: URLs without schemes parse as errors. Closes #3112
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/net_url.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libstd/net_url.rs b/src/libstd/net_url.rs index 5b089474486..ac9d4b389f9 100644 --- a/src/libstd/net_url.rs +++ b/src/libstd/net_url.rs @@ -353,7 +353,7 @@ fn get_scheme(rawurl: ~str) -> result::result<(~str, ~str), @~str> { } } }; - return result::ok((copy rawurl, ~"")); + return result::err(@~"url: Scheme must be terminated with a colon."); } // returns userinfo, host, port, and unparsed part, or an error @@ -780,6 +780,11 @@ mod tests { } #[test] + fn test_no_scheme() { + assert result::is_err(get_scheme(~"noschemehere.html")); + } + + #[test] fn test_invalid_scheme_errors() { assert result::is_err(from_str(~"99://something")); assert result::is_err(from_str(~"://something")); |
