RFR: 8284638: store skip buffers in InputStream Object [v2]

XenoAmess duke at openjdk.java.net
Wed Apr 13 14:56:13 UTC 2022


On Wed, 13 Apr 2022 14:51:34 GMT, liach <duke at openjdk.java.net> wrote:

>> The check for `skipBuffer.length < size` makes it appear that the buffer can be re-allocated.
>> If it is allocated once then only the `skipBuffer == null` is needed.
>> 
>> The code may be simpler if the 'size' variable is removed.
>> 
>>         byte[] skipBuffer = this.skipBuffer;
>>         if (skipBuffer == null) {
>>             this.skipBuffer = skipBuffer = 
>>                 new byte[(remaining < MIN_SKIP_BUFFER_SIZE) ? MIN_SKIP_BUFFER_SIZE : MAX_SKIP_BUFFER_SIZE];
>>         }
>>         while (remaining > 0) {
>>             int nr = read(skipBuffer, 0, (int)Math.min(skipBuffer.length, remaining));
>
> It indeed is reallocated when the existing one is not large enough.

> I recommend moving `nr` declaration from the beginning of the method to where it's actually used (here)

@liach done.

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

PR: https://git.openjdk.java.net/jdk/pull/5872


More information about the core-libs-dev mailing list