On Sun, 21 Sep 2025 00:18:59 GMT, Guanqiang Han <g...@openjdk.org> wrote:

>> Please review this patch.
>> 
>> **Description:**
>> 
>> Currently, ModifiedUtf.utfLen returns a signed int. For very large strings, 
>> this may overflow and produce negative values, leading to incorrect behavior 
>> in code that relies on the UTF length. This patch changes the return type to 
>> long, which fully resolves the issue and allows safe handling of giant 
>> strings.
>> 
>> **Test:**
>> 
>> GHA
>
> Guanqiang Han has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Update and rename TestUtfLen.java to ModifiedUtfTest.java
>   
>   rename test

src/java.base/share/classes/java/io/ObjectOutputStream.java line 1909:

> 1907:                     writeByte(TC_STRING);
> 1908:                 }
> 1909:                 writeShort((int)utflen);

This would seem more consistent if the cast was to (short).

test/jdk/jdk/internal/util/ModifiedUtfTest.java line 59:

> 57:    */
> 58:   static class HeaderCaptureOutputStream extends OutputStream {
> 59:     private byte[] head;

Indentation of java code is 4 spaces in OpenJDK.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/27285#discussion_r2369932520
PR Review Comment: https://git.openjdk.org/jdk/pull/27285#discussion_r2370000908

Reply via email to