RFR: 8272702: Resolving URI relative path with no / may lead to incorrect toString [v2]
KIRIYAMA Takuya
duke at openjdk.java.net
Thu Jun 9 06:35:23 UTC 2022
On Wed, 1 Jun 2022 14:15:31 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:
>> KIRIYAMA Takuya has updated the pull request incrementally with one additional commit since the last revision:
>>
>> 8272702: Resolving URI relative path with no / may lead to incorrect toString
>
> src/java.base/share/classes/java/net/URI.java line 2140:
>
>> 2138: } else {
>> 2139: sb.append("/");
>> 2140: }
>
> This is wrong as it will cause `URI.create("foo").resolve(URI.create("test"))` to return `"/test"` instead of `"test"`
Your comment is correct. The behavior of specifying a relative URI as the base URI should not change, although rfc2396 recommended that the base URI be an absolute URI.
I modified to add "/" only if the given base URI is an absolute URI.
-------------
PR: https://git.openjdk.java.net/jdk/pull/8899
More information about the net-dev
mailing list