[jdk17] RFR: 8269697: JNI_GetPrimitiveArrayCritical() should not accept object array

David Holmes david.holmes at oracle.com
Thu Jul 1 01:24:39 UTC 2021


On 1/07/2021 6:17 am, Zhengyu Gu wrote:
> GetPrimitiveArrayCritical() is supposed to only be used with primitive array types, but nothing prevents current implementation from accepting object arrays (please see attached test case in bug).

JNI does not in general perform parameter validation. This is a 
deliberate design choice with JNI. Use of -Xcheck:jni should detect and 
repport incorrect usage.

David
-----

> My purposed fix is not very friendly, it crashes JVM if a none primitive array is passed in, but I am sure what to expect in this scenario.
> 
> Specification people, please comment. Thanks!
> 
> -------------
> 
> Commit messages:
>   - v0
> 
> Changes: https://git.openjdk.java.net/jdk17/pull/185/files
>   Webrev: https://webrevs.openjdk.java.net/?repo=jdk17&pr=185&range=00
>    Issue: https://bugs.openjdk.java.net/browse/JDK-8269697
>    Stats: 7 lines in 1 file changed: 0 ins; 5 del; 2 mod
>    Patch: https://git.openjdk.java.net/jdk17/pull/185.diff
>    Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/185/head:pull/185
> 
> PR: https://git.openjdk.java.net/jdk17/pull/185
> 


More information about the hotspot-dev mailing list