RFR: 8304837: Classfile API throws IOOBE for MethodParameters attribute without parameter names [v2]

Jonathan Gibbons jjg at openjdk.org
Thu Mar 23 22:58:01 UTC 2023


On Thu, 23 Mar 2023 22:34:24 GMT, Hannes Greule <duke at openjdk.org> wrote:

>> After merging master into https://github.com/openjdk/jdk/pull/9862, we encountered test failures (e.g., https://github.com/SirYwell/jdk/actions/runs/4500940829/jobs/7923018438#step:9:2541). The Classfile API tries to read from constant pool index 0 if a MethodParameters attribute has an entry without name.
>> 
>> The fix is simply using `readUtf8EntryOrNull` instead of `readUtf8Entry`. The related code already correctly handles nullability.
>> 
>> I didn't find an appropriate test class so I added a new one. Let me know if there's a better place or if the test can be improved somehow.
>> 
>> As I don't have a JBS account, someone needs to create a bug report there for me. Thanks.
>
> Hannes Greule has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Apply suggestions from code review
>   
>   Co-authored-by: liach <7806504+liach at users.noreply.github.com>

test/jdk/jdk/classfile/BoundAttributeTest.java line 44:

> 42: import static org.junit.jupiter.api.Assertions.assertTrue;
> 43: 
> 44: /*

Generally, the style for tests is to put the test description comment _before_ the imports.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/13167#discussion_r1146955092


More information about the core-libs-dev mailing list