RFR: JDK-8317920: JDWP-agent sends broken exception event with onthrow option [v2]
Johannes Bechberger
jbechberger at openjdk.org
Mon Oct 16 16:31:33 UTC 2023
On Mon, 16 Oct 2023 15:50:05 GMT, Chris Plummer <cjplummer at openjdk.org> wrote:
>> Johannes Bechberger has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Add test case
>
> test/jdk/com/sun/jdi/JdwpOnThrowTest.java line 86:
>
>> 84: if (ex.catchLocation() == null) {
>> 85: throw new RuntimeException("Exception catch location is null");
>> 86: }
>
> One more thing you can check here. ExceptionEvent implements Locatable, which has a location() API. That should return the same location as ex.thread().frame(0).location().
`if (!ex.thread().frame(0).location().equals(ex.location())) {` causes an exception:
java.lang.IllegalArgumentException: Invalid method id: 139869509179824
at jdk.jdi/com.sun.tools.jdi.ReferenceTypeImpl.getMethodMirror(ReferenceTypeImpl.java:127)
at jdk.jdi/com.sun.tools.jdi.LocationImpl.method(LocationImpl.java:101)
at jdk.jdi/com.sun.tools.jdi.LocationImpl.equals(LocationImpl.java:66)
at JdwpOnThrowTest.main(JdwpOnThrowTest.java:92)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
at java.base/java.lang.Thread.run(Thread.java:1570)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/16145#discussion_r1360927364
More information about the serviceability-dev
mailing list