Hi Prasanta,

 

Changes are fine.

 

Thanks,

Jay

 

From: Prasanta Sadhukhan 
Sent: Thursday, June 30, 2016 3:19 PM
To: Jayathirth D V; Philip Race
Cc: 2d-dev@openjdk.java.net
Subject: Re: [OpenJDK 2D-Dev] [9] RFR JDK-6218397:Printing to file does not 
throw a PrinterException if the file cannot be created

 

Hi Jay,

Yes, we can do that.
Updated webrev:
http://cr.openjdk.java.net/~psadhukhan/6218397/webrev.05/

Regards
Prasanta

On 6/30/2016 3:09 PM, Jayathirth D V wrote:

Hi Prasanta,

 

I think we can use same abortDoc() functionality in “endDoc() -> 
mPSStream.checkError()” case as it is used in startDoc().

In abortDoc() we are closing mPSStream and deleting the spoolfile. Otherwise it 
will be a redundant code.

 

Like :

if (mPSStream.checkError()) {

                abortDoc();

throw new PrinterException("Error while writing to file");

}

 

Thanks,

Jay

From: Prasanta Sadhukhan 
Sent: Thursday, June 30, 2016 10:35 AM
To: Philip Race; Jayathirth D V
Cc: HYPERLINK "mailto:2d-dev@openjdk.java.net"2d-dev@openjdk.java.net
Subject: Re: [OpenJDK 2D-Dev] [9] RFR JDK-6218397:Printing to file does not 
throw a PrinterException if the file cannot be created

 

Thanks Phil.
@Jay, can you please review this updated webrev 
http://cr.openjdk.java.net/~psadhukhan/6218397/webrev.04/ 
that takes care of this syntactic changes?

Regards
Prasanta

On 6/29/2016 11:01 PM, Philip Race wrote:

 if (f.exists()) f.delete();
should use { ... } for the body - 2 cases of this one in each
of the modified files.
 
Other than that OK. I don't need to see an updated webrev
so long as you make those syntactic changes.
 
 
-phil



On 6/23/16, 3:40 AM, Prasanta Sadhukhan wrote: 

Hi Phil, All,

Based on the offline discussion, I added the case when disk gets filled while 
writing to the file. 
Since PrintStream does not throw IOException, I added check for checkError() to 
do the corresponding error handling. I added it after flush() as that is where 
the stream will be written to the file.
HYPERLINK 
"http://cr.openjdk.java.net/%7Epsadhukhan/6218397/webrev.03/"http://cr.openjdk.java.net/~psadhukhan/6218397/webrev.03/

Regards
Prasanta

On 6/20/2016 12:01 PM, prasanta sadhukhan wrote:

Hi Phil,All,

Added file delete in another case where we throw PrinterException.
HYPERLINK 
"http://cr.openjdk.java.net/%7Epsadhukhan/6218397/webrev.02/"http://cr.openjdk.java.net/~psadhukhan/6218397/webrev.02/

Regards
Prasanta

On 6/16/2016 1:40 PM, prasanta sadhukhan wrote:

Modified webrev to close output stream.

HYPERLINK 
"http://cr.openjdk.java.net/%7Epsadhukhan/6218397/webrev.01/"http://cr.openjdk.java.net/~psadhukhan/6218397/webrev.01/

Regards
Prasanta

On 6/15/2016 9:52 PM, Philip Race wrote:

If this is executed on Windows (shared Postscript stream printer could do this)
then since the output stream is still open I expect the delete will fail.
Attempt to close the open stream first (in a try .. catch I suppose).

-phil.

On 6/15/16, 3:25 AM, prasanta sadhukhan wrote: 

Hi All,

Bug: https://bugs.openjdk.java.net/browse/JDK-6218397

The issue was if the linux disk is full and we are trying to "print to file" 
then PrinterException is not thrown and a 0 byte file is created.

Although I am not able to reproduce this behaviour, because when I make my disk 
full and try to run "java", I get

Java HotSpot(TM) Server VM warning: Insufficient space for shared memory file:
   13783
Try using the -Djava.io.tmpdir= option to select an alternate temp location.

but on investigating this, I see that we are calling f.createNewFile() in 
RasterPrinterJob#validateDestination() which creates a new, empty file

but if there is any exception in PSPrinterJob#startDoc this file is not 
deleted. 

Modified the code to make sure if there is any exception, delete the file.

HYPERLINK 
"http://cr.openjdk.java.net/%7Epsadhukhan/6218397/webrev.00/"http://cr.openjdk.java.net/~psadhukhan/6218397/webrev.00/

Regards
Prasanta

 

 

 

 

 

 

Reply via email to