Hi Phil,
Thanks for the review. I have made following changes : 1) I am using File.createTempFile() both in case of read and write as a result of which we don't need external .png file which was there in previous webrev. 2) Also since I am using temporary file for read(url), I observed one more bug where I am not able to delete temporary file referenced by URL. This is happening because we are using the input url with openStream() API in ImageIO.read() and when createImageInputStream() returns null we are not closing the stream. So I have added additional code to close this stream so that temporary file can be deleted. 3) Corrected some typo's in test case comments. Please find updated webrev for review : http://cr.openjdk.java.net/~jdv/8044289/webrev.01/ Thanks, Jay From: Philip Race Sent: Wednesday, March 16, 2016 10:59 PM To: Jayathirth D V Cc: 2d-dev@openjdk.java.net Subject: Re: Review Request for JDK-8044289 : In ImageIO.read() and write() NPE is not handled properly for stream The test writes out into "test.src". I believe that you should treat that as a "read-only" location. Write to a tempfile (File.createTempFile()) or TESTCLASSES. -phil. On 3/15/16, 10:50 PM, Jayathirth D V wrote: Hi Phil,All Please review the following fix in JDK9: Bug : https://bugs.openjdk.java.net/browse/JDK-8044289 Webrev : HYPERLINK "http://cr.openjdk.java.net/%7Ejdv/8044289/webrev.00/"http://cr.openjdk.java.net/~jdv/8044289/webrev.00/ Issue : When createImageInputStream() or createImageOutputStream returns null in ImageIO.read() or ImageIO.write() we are seeing NPE as it stream is used further without null check. Root cause : "stream" is used without checking whether it is null or not. Solution : Handle null pointer of stream and throw IIOException. Test case contains all possible scenarios where createImageInputStream() or createImageOutputStream can return null. Thanks, Jay