[15] RFR: 8248476: No helpful NullPointerException message after calling fillInStackTrace

David Holmes david.holmes at oracle.com
Mon Jun 29 13:19:29 UTC 2020


Hi Goetz,

On 29/06/2020 9:17 pm, Lindenmaier, Goetz wrote:
> Hi,
> 
> If changing the stack trace by calling fillInStackTrace in user code, the
> NPE algorithm lacks the proper information to compute the message.
> Thus, we must omit it after that call.

For those of us who didn't follow this work in detail could you outline 
exactly when in the lifecycle of a NPE the detailed error message is 
created. I'm having trouble understanding the exact nature of the 
problem, and thus the fix.

Thanks,
David
-----

> I implement this by checking for a call to fillInStackTrace at the bci
> recorded in the exception.
> http://cr.openjdk.java.net/~goetz/wr20/8248476-NPE_fillInStackTrace-jdk15/01/
> 
> Is there any other way of changing the stack trace?  setStackTrace() is
> no problem as it does not change the internal backtrace datastructure.
> 
> I'll push the change to jdk/submit and run it through our CI before pushing.
> 
> Best regards,
>    Goetz.
> 
> 


More information about the hotspot-runtime-dev mailing list