On Sat, 24 Jul 2021 03:17:11 GMT, Sergey Bylokhov <s...@openjdk.org> wrote:
>> We are incorrectly passing source offset to ImageInputStream.readFully() >> which is getting used on destination buffer. streamPos maintained in each >> implementation of stream maintain's appropriate source offset while reading >> the data. Since we are completely utilizing destination buffer any offset >> greater than 0 would cause IOOBE. In our case we should use 0 as offset >> value. >> >> Also to hit this code we need stream/file with at-least 1MB of IFD data, >> that's why there is no regression test. This change can be verified using >> image attached in JBS. All test run is green. > > 1024000 bytes does not look like a big problem especially if it is generated > on the fly during the test execution? > You can try to load the data for our PYCC color profile and set one of its > tag data to a big chunk like icSigCopyrightTag, or you can try to just fill > it by zeros at the end. @mrserb added regression test, please review. ------------- PR: https://git.openjdk.java.net/jdk/pull/4836