Skip to content

Commit

Permalink
url: fix parse (#14456)
Browse files Browse the repository at this point in the history
  • Loading branch information
depperm committed May 19, 2022
1 parent 95d24e5 commit 23568f1
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 1 deletion.
2 changes: 1 addition & 1 deletion vlib/net/urllib/urllib.v
Original file line number Diff line number Diff line change
Expand Up @@ -599,7 +599,7 @@ fn parse_host(host string) ?string {
return host1 + host2 + host3
}
if idx := host.last_index(':') {
colon_port = host[idx..]
colon_port = host[idx..i]
if !valid_optional_port(colon_port) {
return error(error_msg('parse_host: invalid port $colon_port after host ',
''))
Expand Down
21 changes: 21 additions & 0 deletions vlib/net/urllib/urllib_test.v
Original file line number Diff line number Diff line change
Expand Up @@ -98,3 +98,24 @@ fn test_parse_empty_query_two() ? {
assert qvalues_map == {}
assert query_str == query_encode
}

fn test_parse() ? {
urls := [
'jdbc:mysql://test_user:ouupppssss@localhost:3306/sakila?profileSQL=true',
'ftp://ftp.is.co.za/rfc/rfc1808.txt',
'http://www.ietf.org/rfc/rfc2396.txt#header1',
'ldap://[2001:db8::7]/c=GB?objectClass=one&objectClass=two',
'mailto:John.Doe@example.com',
'news:comp.infosystems.www.servers.unix',
'tel:+1-816-555-1212',
'telnet://192.0.2.16:80/',
'urn:oasis:names:specification:docbook:dtd:xml:4.1.2',
'foo://example.com:8042/over/there?name=ferret#nose',
]
for url in urls {
_ := urllib.parse(url) or {
assert false
panic('FAILED parsing url')
}
}
}

0 comments on commit 23568f1

Please sign in to comment.