Thanks Jim for suggesting test should have its own VM. I agree with it. Here is the updated webrev : http://cr.openjdk.java.net/~aghaisas/8160421/webrev.01/
Phil, can you please review it? Regards, Ajit -----Original Message----- From: Jim Graham Sent: Friday, July 01, 2016 5:13 AM To: Ajit Ghaisas; Philip Race; Sergey Bylokhov; 2d-dev Subject: Re: [OpenJDK 2D-Dev] [9] Fix for JDK-8160421 : Regression: JDK-8139192 causes NPE in java.awt.Toolkit.createCustomCursor() The solution looks fine to me. I didn't run the test case, but about the only issue I can see with it is whether it should have a flag to run it in its own VM because of its interaction with System.err. Phil? ...jim On 06/30/2016 06:41 AM, Ajit Ghaisas wrote: > Hi, > > Bug : > This is regarding a NPE getting printed as stacktrace in > java.awt.Toolkit.createCustomCursor() method. > The bug is described at : > https://bugs.openjdk.java.net/browse/JDK-8160421 > > Root Cause : > Fix of bug JDK-8139192 : Custom ImageFilters return blank images in Java > 8(.45) while working in 7. > The above fix added a RuntimeException catch & log mechanism to support > a ImageFilter which was broken due to the second imageComplete() call in > OffScreenImageSource.produce() method. > > Analysis: > Without the fix of JDK-8139192, java.awt.Toolkit.createCustomCursor() > call results in > NullPointerException when imageComplete(ImageConsumer.STATICIMAGEDONE) > call is made - but, it gets consumed silently. > Cathing RuntimeException() out of > imageComplete(ImageConsumer.STATICIMAGEDONE) was added to fix JDK-8160421. > This started catching & logging the exception in case 'theConsumer' has > unregistered itself as a result of call > theConsumer.imageComplete(ImageConsumer.SINGLEFRAMEDONE); > This log is undesirable as this mechanism is used in > java.awt.Toolkit.createCustomCursor() and may be in other places. > > Fix : > Make the call to imageComplete(ImageConsumer.STATICIMAGEDONE) only if > 'theConsumer' has not been unregistered. > > Webrev: > http://cr.openjdk.java.net/~aghaisas/8160421/webrev.00/ > > Request you to review. > > Regards, > Ajit >