On Thu, 26 Feb 2026 10:17:54 GMT, Eirik Bjørsnøs <[email protected]> wrote:

>> Avoid a byte array copy in encodeToString by using 
>> JavaLangAccess#uncheckedNewStringWithLatin1Bytes
>
> src/java.base/share/classes/java/util/Base64.java line 351:
> 
>> 349:          */
>> 350:         public String encodeToString(byte[] src) {
>> 351:             byte[] encoded = encode(src);
> 
> Consider adding a comment here to make it clear that `encoded` is guaranteed 
> to be ASCII-only.
> 
> Otherwise, using `uncheckedNewStringWithLatin1Bytes` would not be safe. 
> Better to make this contract explicit with a comment.

`encoded` is already a well-behaved platform API, and this method already 
states:

> In other words, an invocation of this method has exactly the same effect as 
> invoking `new String(encode(src), StandardCharsets.ISO_8859_1)`.

And this is exactly compatible with `uncheckedNewStringWithLatin1Bytes`.

Let's not add redundant comments.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/29920#discussion_r2859802886

Reply via email to