[OpenJDK 2D-Dev] [9] RFR JDK-8025439: [TEST BUG] [macosx] PrintServiceLookup.lookupPrintServices doesn't work properly since jdk8b105

Phil Race philip.race at oracle.com
Mon Nov 14 23:09:19 UTC 2016


This evaluation needs to go in the bug report, not (just) here.

mac. shows spaces in the name in its GUI but "_" in the names reported 
by lpstat
so it may be that the replacement is right but I'd still like to dig a 
bit here.
Can you point to the code that does the " "->"_" replacement. I can't see it
in CUPSPrinter.getAllPrinters().

And you saying that

PrintServiceLookup.lookupPrintServices(null, null)

will return an array with a "null" element ?

That would be a bug.

-phil.

On 11/14/2016 02:18 AM, Prasanta Sadhukhan wrote:
>
> Hi All,
>
> Please review a small bugfix whereby it is seen that if we specify 
> printer with space in its name, then
> javax/print/PrintServiceLookup/GetPrintServices.java fails citing NPE.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8025439
> webrev: http://cr.openjdk.java.net/~psadhukhan/8025439/webrev.00/
>
> The NPE happens because
> http://hg.openjdk.java.net/jdk9/client/jdk/file/b1543c5eb8af/src/java.desktop/unix/classes/sun/print/PrintServiceLookupProvider.java#l460
> calls checkPrinterName() which checks it name contains letter or digit
> http://hg.openjdk.java.net/jdk9/client/jdk/file/b1543c5eb8af/src/java.desktop/unix/classes/sun/print/PrintServiceLookupProvider.java#l433
> and returns null if has spaces
> so lookupPrintServices() gets null
>
> Now, if we remove this <space> check then also, it will not work as
> In system running with CUPS, refreshServices calls 
> CUPSPrinter#getAllPrinters() which returns a set of printers. It seems 
> it replaces " "  with "_" when populating the list
> for e.g Ricoh Aficio MP 5002 printer name is sent as 
> Ricoh_Aficio_MP_5002 and stored in the list so we cannot have <space> 
> in printer name.
>
> In Mac, it takes <sp> in printer name when we add printers but in 
> linux, solaris it does not allow spaces in printer name during addition
> so in the proposed fix, a check for <sp> is added to make it automatic 
> pass for non-windows (CUPS) system.
>
> Regards
> Prasanta
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/2d-dev/attachments/20161114/cf934ce0/attachment.html>


More information about the 2d-dev mailing list