RFR 8071657:JDI ObjectReferenceImpl.invokeMethod() validation fails for virtual invocations of method with declaring type being an interface

serguei.spitsyn at oracle.com serguei.spitsyn at oracle.com
Fri Feb 6 22:47:35 UTC 2015


The fix looks good.

Thanks,
Serguei

On 2/6/15 6:54 AM, Jaroslav Bachorik wrote:
> Please, review the following change in JDI implementation
>
> Issue : https://bugs.openjdk.java.net/browse/JDK-8071657
> Webrev: http://cr.openjdk.java.net/~jbachorik/8071657/webrev.00
>
> After JDK-8042123 has been integrated it became possible to make 
> non-virtual calls to interface default or static methods via JDI.
>
> Unfortunately, when a virtual invocation of a method with its 
> declaring type being an interface is attempted it fails validation. 
> The code fails to distinguish virtual and non-virtual calls and always 
> fails for non-default methods.
>
> The solution is to check to check for the call being non-virtual 
> before enforcing the method to be default.
>
> Thanks,
>
> -JB-



More information about the serviceability-dev mailing list