]> git.ipfire.org Git - thirdparty/cups.git/commitdiff
Fix shared printing using the IPP Everywhere driver (Issue #5361)
authorMichael R Sweet <michael.r.sweet@gmail.com>
Sun, 19 Aug 2018 11:49:10 +0000 (07:49 -0400)
committerMichael R Sweet <michael.r.sweet@gmail.com>
Sun, 19 Aug 2018 11:49:10 +0000 (07:49 -0400)
CHANGES.md
cups/ppd-cache.c

index 30834f94e37189d22ef15f6ef06eb396f1823284..078372cae382360aac83fa74d90fc43836e08c9c 100644 (file)
@@ -18,6 +18,8 @@ Changes in CUPS v2.3b6
 - The scheduler did not report all of the supported job options and values
   (Issue #5340)
 - Fixed some typos in the label printer drivers (Issue #5350)
+- The IPP Everywhere "driver" no longer does local filtering when printing to
+  a shared CUPS printer (Issue #5361)
 - The scheduler was being backgrounded on macOS, causing applications to spin
   (rdar://40436080)
 - The scheduler did not validate that required initial request attributes were
index 178b22dfc7780cb3ea6ed644e87b70e5e048a470..827eba5d3b185af422e6070dcb7b2222d1963443 100644 (file)
@@ -3221,7 +3221,17 @@ _ppdCreateFromIPP(char   *buffer,        /* I - Filename buffer */
     if (ippContainsString(attr, "image/png"))
       cupsFilePuts(fp, "*cupsFilter2: \"image/png image/png 0 -\"\n");
     if (is_pdf)
-      cupsFilePuts(fp, "*cupsFilter2: \"application/vnd.cups-pdf application/pdf 10 -\"\n");
+    {
+     /*
+      * Don't locally filter PDF content when printing to a CUPS shared
+      * printer, otherwise the options will be applied twice...
+      */
+
+      if (ippContainsString(attr, "application/vnd.cups-pdf"))
+        cupsFilePuts(fp, "*cupsFilter2: \"application/pdf application/pdf 0 -\"\n");
+      else
+        cupsFilePuts(fp, "*cupsFilter2: \"application/vnd.cups-pdf application/pdf 10 -\"\n");
+    }
     if (is_apple)
       cupsFilePuts(fp, "*cupsFilter2: \"image/urf image/urf 100 -\"\n");
     if (is_pwg)