On Mon, 28 Mar 2022 17:21:40 GMT, Alan Bateman <al...@openjdk.org> wrote:
>> src/java.base/share/classes/java/util/zip/InflaterInputStream.java line 133: >> >>> 131: * Unlike the {@link InputStream#read(byte[],int,int) overridden >>> method} >>> 132: * of {@code InputStream}, this method might write more bytes than >>> the returned >>> 133: * number of inflated bytes into the buffer {@code b}. >> >> Hello Volker, I think this comment should be a bit more clear and state what >> exactly it means by writing more bytes than the returned value. >> Specifically, I think it should clearly state that even though it might >> write additional data, it will however not write/change data starting and >> beyond `off + len` index in the passed array. > > I think this require a bit of word smithing. If the return value is 'n' then > it should make it clear that the values in elements b[off + n] to b[off + len > - 1] are undefined, their values may or may have been changed by the > inflate/read operation. For completeness, the expectation for when inflate > fails should be specified too, the contents of b[off] to b[off + len - 1] > will be undefined. Hi Volker, I believe you are heading in the right direction. I agree with Alan and Jai that we could use a bit more clarification ------------- PR: https://git.openjdk.java.net/jdk/pull/7986