diff --git a/src/solaris/classes/sun/print/IPPPrintService.java b/src/solaris/classes/sun/print/IPPPrintService.java index 1c441bd197ee704373f4fed2327e59c7f8d8e68e..dea62374103f3e91c08014f6a7a2d77ca6e2483e 100644 --- a/src/solaris/classes/sun/print/IPPPrintService.java +++ b/src/solaris/classes/sun/print/IPPPrintService.java @@ -1029,7 +1029,16 @@ public class IPPPrintService implements PrintService, SunPrinterJobService { // now supports collation and that most OS has a way // of setting it, it is a safe assumption to just always // include SheetCollate as supported attribute. - catList.add(SheetCollate.class); + + /* + In Linux, we use Postscript for rendering but Linux still + has issues in propagating Postscript-embedded setpagedevice + setting like collation. Therefore, we temporarily exclude + Linux. + */ + if (!UnixPrintServiceLookup.isLinux()) { + catList.add(SheetCollate.class); + } } // With the assumption that Chromaticity is equivalent to diff --git a/src/solaris/classes/sun/print/UnixPrintServiceLookup.java b/src/solaris/classes/sun/print/UnixPrintServiceLookup.java index c682634b7b66579219808601d9425d8ce3570fc1..2c2a64062932c7c42073fdcab6335483dda468e5 100644 --- a/src/solaris/classes/sun/print/UnixPrintServiceLookup.java +++ b/src/solaris/classes/sun/print/UnixPrintServiceLookup.java @@ -123,6 +123,10 @@ public class UnixPrintServiceLookup extends PrintServiceLookup return osname.equals("SunOS"); } + static boolean isLinux() { + return (osname.equals("Linux")); + } + static boolean isBSD() { return (osname.equals("Linux") || osname.contains("OS X"));