Skip to content

Commit

Permalink
sys: fix Uri.decode to handle ipv6 addresses
Browse files Browse the repository at this point in the history
  • Loading branch information
Matthew Giannini authored and Matthew Giannini committed Jul 21, 2023
1 parent 9cdf96f commit 385853d
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 6 deletions.
6 changes: 3 additions & 3 deletions src/sys/java/fan/sys/Uri.java
Original file line number Diff line number Diff line change
Expand Up @@ -1544,12 +1544,12 @@ static String toSection(int section)
charMap['='] = USER | HOST | PATH | QUERY | FRAG;

// gen-delimiter symbols
charMap[':'] = PATH | USER | QUERY | FRAG;
charMap[':'] = HOST | PATH | USER | QUERY | FRAG;
charMap['/'] = PATH | QUERY | FRAG;
charMap['?'] = QUERY | FRAG;
charMap['#'] = 0;
charMap['['] = 0;
charMap[']'] = 0;
charMap['['] = HOST;
charMap[']'] = HOST;
charMap['@'] = PATH | QUERY | FRAG;

// delimiter escape map - which characters need to
Expand Down
6 changes: 3 additions & 3 deletions src/sys/js/fan/Uri.js
Original file line number Diff line number Diff line change
Expand Up @@ -1482,12 +1482,12 @@ fan.sys.Uri.charMap[59] = fan.sys.Uri.USER | fan.sys.Uri.HOST | fan.sys.Uri.PAT
fan.sys.Uri.charMap[61] = fan.sys.Uri.USER | fan.sys.Uri.HOST | fan.sys.Uri.PATH | fan.sys.Uri.QUERY | fan.sys.Uri.FRAG;

// gen-delimiter symbols
fan.sys.Uri.charMap[58] = fan.sys.Uri.PATH | fan.sys.Uri.USER | fan.sys.Uri.QUERY | fan.sys.Uri.FRAG;
fan.sys.Uri.charMap[58] = fan.sys.Uri.HOST | fan.sys.Uri.PATH | fan.sys.Uri.USER | fan.sys.Uri.QUERY | fan.sys.Uri.FRAG;
fan.sys.Uri.charMap[47] = fan.sys.Uri.PATH | fan.sys.Uri.QUERY | fan.sys.Uri.FRAG;
fan.sys.Uri.charMap[63] = fan.sys.Uri.QUERY | fan.sys.Uri.FRAG;
fan.sys.Uri.charMap[35] = 0;
fan.sys.Uri.charMap[91] = 0;
fan.sys.Uri.charMap[93] = 0;
fan.sys.Uri.charMap[91] = fan.sys.Uri.HOST;
fan.sys.Uri.charMap[93] = fan.sys.Uri.HOST;
fan.sys.Uri.charMap[64] = fan.sys.Uri.PATH | fan.sys.Uri.QUERY | fan.sys.Uri.FRAG;

// delimiter escape map - which characters need to
Expand Down
7 changes: 7 additions & 0 deletions src/testSys/fan/UriTest.fan
Original file line number Diff line number Diff line change
Expand Up @@ -285,6 +285,13 @@ class UriTest : Test
verifyEq(uri.userInfo, userInfo)
verifyEq(uri.host, host)
verifyEq(uri.port, port)

// ensure decode
uri = Uri.decode(uri.toStr)
verifyEq(uri.auth, auth)
verifyEq(uri.userInfo, userInfo)
verifyEq(uri.host, host)
verifyEq(uri.port, port)
}

//////////////////////////////////////////////////////////////////////////
Expand Down

0 comments on commit 385853d

Please sign in to comment.