[OpenJDK 2D-Dev] [9] RFR JDK-5049012: PrintToFile option is not disabled for flavors that do not support destination

Prasanta Sadhukhan prasanta.sadhukhan at oracle.com
Thu Jun 30 07:45:27 UTC 2016


Hi Phil,

NPE will be thrown
----------
public boolean isAttributeValueSupported(Attribute attr,
                                              DocFlavor flavor,
                                              AttributeSet attributes) {
         if (attr == null) {
             throw new NullPointerException("null attribute");
         }
---------
before updateInfo() will be called so I guess null check is redundant 
there. Anyways, I have added the check back just to be safe
http://cr.openjdk.java.net/~psadhukhan/5049012/webrev.01/

Regards
Prasanta
On 6/29/2016 11:59 PM, Philip Race wrote:
> ---
> https://docs.oracle.com/javase/8/docs/api/javax/print/PrintService.html#isAttributeValueSupported-javax.print.attribute.Attribute-javax.print.DocFlavor-javax.print.attribute.AttributeSet- 
>
>
> Throws:
>     NullPointerException - (unchecked exception) if attrval is null.
>
> -- 
>
> So why did you remove the check for null ?
>
>
> -phil.
>
> On 6/28/16, 3:04 AM, Prasanta Sadhukhan wrote:
>> Hi All,
>>
>> Please review a fix for an issue where it is seen that 
>> "Print-To-File" option is enabled even for flavors that do not 
>> support Destination attribute
>> even though isAttributeValueSupported for that flavor returns false.
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-5049012
>> webrev: http://cr.openjdk.java.net/~psadhukhan/5049012/webrev.00/
>>
>> The reason for this behaviour is in Print Dialog code, the validation 
>> is done against isAttributeCategorySupported() which still returns 
>> true because Pageable and Printable supports it
>> and therefore the "Print-to-File" option gets enabled.
>>
>> But print dialog is shown specific to a doc flavor and a print 
>> service (selected one) and hence must validate the attribute against 
>> the chosen doc flavor.
>> So, the proposed fix checks the attributevalue is supported or not 
>> for that flavor to determine if we need to enable "Print-to-File" 
>> option in print dialog.
>>
>> Regards
>> Prasanta




More information about the 2d-dev mailing list