diff --git a/src/libstd/net_url.rs b/src/libstd/net_url.rs index a604f0ee4ec5..b8c1b3188419 100644 --- a/src/libstd/net_url.rs +++ b/src/libstd/net_url.rs @@ -538,7 +538,7 @@ fn get_path(rawurl: ~str, authority : bool) -> match c { 'A' to 'Z' | 'a' to 'z' | '0' to '9' | '&' |'\'' | '(' | ')' | '.' | '@' | ':' | '%' | '/' | '+' | '!' | '*' | ',' | ';' | '=' - | '_' => { + | '_' | '-' => { again; } '?' | '#' => { @@ -804,6 +804,14 @@ mod tests { assert url.path == ~"/file_name.html"; } + #[test] + fn test_url_with_dashes() { + let urlstr = ~"http://dotcom.com/file-name.html"; + let url = from_str(urlstr).get(); + #debug("url: %?", url); + assert url.path == ~"/file-name.html"; + } + #[test] fn test_no_scheme() { assert result::is_err(get_scheme(~"noschemehere.html"));