summaryrefslogtreecommitdiff
path: root/debian/patches
diff options
context:
space:
mode:
authorDidier Raboud <odyx@debian.org>2019-08-17 15:32:31 +0200
committerDidier Raboud <odyx@debian.org>2019-08-17 15:32:44 +0200
commitfecb588399b17da2258dd7e31730f7d263ec955b (patch)
treebff2792084ceb2e2afd5c7951ba8c5aa605aa908 /debian/patches
parentd8028e6c25bb0d343ee4e261ee0938147ab81706 (diff)
parent1cd07131ecfb487064814a2c315e89b38066d73c (diff)
merge patched-debian/master into debian/master
Diffstat (limited to 'debian/patches')
-rw-r--r--debian/patches/0003-Install-root-backends-world-readable.patch4
-rw-r--r--debian/patches/0019-Let-snmp-backend-also-use-manufacturer-specific-MIBs.patch2
-rw-r--r--debian/patches/0034-Build-mantohtml-with-the-build-architecture-compiler.patch6
-rw-r--r--debian/patches/0035-The-lp-and-lpr-commands-now-provide-better-error-mes.patch87
-rw-r--r--debian/patches/0036-Protect-against-continuing-to-read-from-a-file-at-EO.patch40
-rw-r--r--debian/patches/0037-Use-the-same-requested-attributes-values-for-all-IPP.patch111
-rw-r--r--debian/patches/0038-Add-a-USB-quirk-rule-for-the-Lexmark-E120n-Issue-547.patch20
-rw-r--r--debian/patches/0039-Updated-the-USB-quirks-rule-for-Zebra-label-printers.patch34
-rw-r--r--debian/patches/0040-Add-USB-quirks-rule-for-Xerox-printers-Issue-5523.patch20
-rw-r--r--debian/patches/0041-Add-a-USB-quirks-rule-for-the-DYMO-450-Turbo-Issue-5.patch20
-rw-r--r--debian/patches/0042-Fix-compile-error-on-Linux-Issue-5483.patch31
-rw-r--r--debian/patches/0043-Stop-parsing-the-Emulators-keywords-in-PPD-files-Iss.patch159
-rw-r--r--debian/patches/0044-Fix-potential-unaligned-accesses-in-the-string-pool-.patch1130
-rw-r--r--debian/patches/0045-Fix-an-issue-with-PreserveJobHistory-and-time-values.patch114
-rw-r--r--debian/patches/airprint-support.patch8
-rw-r--r--debian/patches/confdirperms.patch4
-rw-r--r--debian/patches/cups-set-default-error-policy-retry-job.patch8
-rw-r--r--debian/patches/cupsd-set-default-for-SyncOnClose-to-Yes.patch6
-rw-r--r--debian/patches/debianize_cups-config.patch2
-rw-r--r--debian/patches/default_log_settings.patch2
-rw-r--r--debian/patches/do-not-broadcast-with-hostnames.patch4
-rw-r--r--debian/patches/drop_unnecessary_dependencies.patch4
-rw-r--r--debian/patches/fixes-for-jobs-with-multiple-files-and-multiple-formats.patch4
-rw-r--r--debian/patches/log-debug-history-nearly-unlimited.patch4
-rw-r--r--debian/patches/logfiles_adm_readable.patch2
-rw-r--r--debian/patches/man-cups-lpd-drop-dangling-references.patch2
-rw-r--r--debian/patches/manpage-hyphen-minus.patch6
-rw-r--r--debian/patches/manpage-translations.patch2
-rw-r--r--debian/patches/move-cupsd-conf-default-to-share.patch4
-rw-r--r--debian/patches/no-conffile-timestamp.patch12
-rw-r--r--debian/patches/pwg-raster-attributes.patch8
-rw-r--r--debian/patches/reactivate_recommended_driver.patch8
-rw-r--r--debian/patches/removecvstag.patch2
-rw-r--r--debian/patches/rename-systemd-units.patch6
-rw-r--r--debian/patches/series11
-rw-r--r--debian/patches/show-compile-command-lines.patch4
-rw-r--r--debian/patches/test-i18n-nonlinux.patch2
-rw-r--r--debian/patches/tests-fix-ppdLocalize-on-unclean-env.patch4
-rw-r--r--debian/patches/tests-ignore-ipv6-address-family-not-supported.patch6
-rw-r--r--debian/patches/tests-ignore-kfreebsd-amd64-not-a-pdf.patch6
-rw-r--r--debian/patches/tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch6
-rw-r--r--debian/patches/tests-ignore-usb-crash.patch6
-rw-r--r--debian/patches/tests-ignore-warnings.patch6
-rw-r--r--debian/patches/tests-make-lpstat-call-reproducible.patch8
-rw-r--r--debian/patches/tests-no-pdftourf.patch4
-rw-r--r--debian/patches/tests-use-ipv4-lo-address.patch10
-rw-r--r--debian/patches/tests-wait-on-unfinished-jobs-everytime.patch6
47 files changed, 89 insertions, 1866 deletions
diff --git a/debian/patches/0003-Install-root-backends-world-readable.patch b/debian/patches/0003-Install-root-backends-world-readable.patch
index c9c130d02..b3d1fd7b1 100644
--- a/debian/patches/0003-Install-root-backends-world-readable.patch
+++ b/debian/patches/0003-Install-root-backends-world-readable.patch
@@ -1,4 +1,4 @@
-From ee92595c22b31cabc5a53268803fc8e53db14813 Mon Sep 17 00:00:00 2001
+From 03907fe3af14450016228a5f37f100c52c8c49d5 Mon Sep 17 00:00:00 2001
From: Martin Pitt <mpitt@debian.org>
Date: Tue, 9 Aug 2016 18:11:06 +0200
Subject: Install root backends world-readable
@@ -52,7 +52,7 @@ index 42eaa59ff..3bdb48302 100644
cupsDirClose(dir);
diff --git a/scheduler/job.c b/scheduler/job.c
-index 638f256db..bbef60c64 100644
+index 1a7a34ca9..dcee43d83 100644
--- a/scheduler/job.c
+++ b/scheduler/job.c
@@ -1250,7 +1250,7 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */
diff --git a/debian/patches/0019-Let-snmp-backend-also-use-manufacturer-specific-MIBs.patch b/debian/patches/0019-Let-snmp-backend-also-use-manufacturer-specific-MIBs.patch
index 5f18548c5..fa138ed4f 100644
--- a/debian/patches/0019-Let-snmp-backend-also-use-manufacturer-specific-MIBs.patch
+++ b/debian/patches/0019-Let-snmp-backend-also-use-manufacturer-specific-MIBs.patch
@@ -1,4 +1,4 @@
-From 3f8584b5142fccf1a495dc1d1e6ab66248a3f6a3 Mon Sep 17 00:00:00 2001
+From 23fedad956e4bb366e1da86cfc7994f7818fdd87 Mon Sep 17 00:00:00 2001
From: Tim Waugh <twaugh@redhat.com>
Date: Tue, 9 Aug 2016 18:11:30 +0200
Subject: Let snmp backend also use manufacturer-specific MIBs
diff --git a/debian/patches/0034-Build-mantohtml-with-the-build-architecture-compiler.patch b/debian/patches/0034-Build-mantohtml-with-the-build-architecture-compiler.patch
index 09339f4e2..05bfb25fe 100644
--- a/debian/patches/0034-Build-mantohtml-with-the-build-architecture-compiler.patch
+++ b/debian/patches/0034-Build-mantohtml-with-the-build-architecture-compiler.patch
@@ -1,4 +1,4 @@
-From 9c5b4d679e611fb391b58725076d936d2ec1ac9a Mon Sep 17 00:00:00 2001
+From d5966671d8b2ccbf1350589f2f9bd2f50835474e Mon Sep 17 00:00:00 2001
From: Helmut Grohne <helmut@subdivi.de>
Date: Tue, 9 Aug 2016 18:11:49 +0200
Subject: Build mantohtml with the build architecture compiler
@@ -18,7 +18,7 @@ Bug-Debian: https://bugs.debian.org/837936
4 files changed, 22 insertions(+), 9 deletions(-)
diff --git a/Makedefs.in b/Makedefs.in
-index 656d7b44c..d6fa23e89 100644
+index 83eae7ce8..4f6247a68 100644
--- a/Makedefs.in
+++ b/Makedefs.in
@@ -25,6 +25,7 @@ CUPS_VERSION = @CUPS_VERSION@
@@ -30,7 +30,7 @@ index 656d7b44c..d6fa23e89 100644
CXX = @LIBTOOL_CXX@ @CXX@
DSO = @DSO@
diff --git a/configure.ac b/configure.ac
-index c7696c7b9..f57b97dbf 100644
+index 776259933..864ba340a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,6 +22,15 @@ sinclude(config-scripts/cups-common.m4)
diff --git a/debian/patches/0035-The-lp-and-lpr-commands-now-provide-better-error-mes.patch b/debian/patches/0035-The-lp-and-lpr-commands-now-provide-better-error-mes.patch
deleted file mode 100644
index fcd175c95..000000000
--- a/debian/patches/0035-The-lp-and-lpr-commands-now-provide-better-error-mes.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From f67a4b249a53f91ecb70dce59a8c41ca1c3b04ed Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michaelrsweet@gmail.com>
-Date: Wed, 1 Nov 2017 15:45:50 -0400
-Subject: =?UTF-8?q?The=20`lp`=20and=20`lpr`=20commands=20now=20provide=20b?=
- =?UTF-8?q?etter=20error=20messages=20when=20the=20default=0Aprinter=20can?=
- =?UTF-8?q?not=20be=20found=20(Issue=20#5096)?=
-
-- berkeley/lpr.c: Use cupsLastErrorMessage() for not-found errors.
-- cups/dest.c: Set the last error message in cupsGetNamedDest().
-- systemv/lp.c: Use cupsLastErrorMessage() for not-found errors.
-
-Bug-Debian: #870463
----
- cups/dest.c | 38 +++++++++++++++++++++++++++++++++++++-
- 1 file changed, 37 insertions(+), 1 deletion(-)
-
-diff --git a/cups/dest.c b/cups/dest.c
-index 7ef85a1b9..d92d23d8e 100644
---- a/cups/dest.c
-+++ b/cups/dest.c
-@@ -1883,6 +1883,9 @@ cupsGetNamedDest(http_t *http, /* I - Connection to server or @code CUPS_HTT
- snprintf(filename, sizeof(filename), "%s/.cups/lpoptions", home);
-
- dest_name = cups_get_default(filename, defname, sizeof(defname), &instance);
-+
-+ if (dest_name)
-+ set_as_default = 2;
- }
-
- if (!dest_name)
-@@ -1893,6 +1896,9 @@ cupsGetNamedDest(http_t *http, /* I - Connection to server or @code CUPS_HTT
-
- snprintf(filename, sizeof(filename), "%s/lpoptions", cg->cups_serverroot);
- dest_name = cups_get_default(filename, defname, sizeof(defname), &instance);
-+
-+ if (dest_name)
-+ set_as_default = 3;
- }
-
- if (!dest_name)
-@@ -1901,7 +1907,8 @@ cupsGetNamedDest(http_t *http, /* I - Connection to server or @code CUPS_HTT
- * No locally-set default destination, ask the server...
- */
-
-- op = IPP_OP_CUPS_GET_DEFAULT;
-+ op = IPP_OP_CUPS_GET_DEFAULT;
-+ set_as_default = 4;
-
- DEBUG_puts("1cupsGetNamedDest: Asking server for default printer...");
- }
-@@ -1932,7 +1939,36 @@ cupsGetNamedDest(http_t *http, /* I - Connection to server or @code CUPS_HTT
- dest = data.dest;
- }
- else
-+ {
-+ switch (set_as_default)
-+ {
-+ default :
-+ break;
-+
-+ case 1 : /* Set from env vars */
-+ if (getenv("LPDEST"))
-+ _cupsSetError(IPP_STATUS_ERROR_NOT_FOUND, _("LPDEST environment variable names default destination that does not exist."), 1);
-+ else if (getenv("PRINTER"))
-+ _cupsSetError(IPP_STATUS_ERROR_NOT_FOUND, _("PRINTER environment variable names default destination that does not exist."), 1);
-+ else
-+ _cupsSetError(IPP_STATUS_ERROR_NOT_FOUND, _("No default destination."), 1);
-+ break;
-+
-+ case 2 : /* Set from ~/.cups/lpoptions */
-+ _cupsSetError(IPP_STATUS_ERROR_NOT_FOUND, _("~/.cups/lpoptions file names default destination that does not exist."), 1);
-+ break;
-+
-+ case 3 : /* Set from /etc/cups/lpoptions */
-+ _cupsSetError(IPP_STATUS_ERROR_NOT_FOUND, _("/etc/cups/lpoptions file names default destination that does not exist."), 1);
-+ break;
-+
-+ case 4 : /* Set from server */
-+ _cupsSetError(IPP_STATUS_ERROR_NOT_FOUND, _("No default destination."), 1);
-+ break;
-+ }
-+
- return (NULL);
-+ }
- }
-
- DEBUG_printf(("1cupsGetNamedDest: Got dest=%p", (void *)dest));
diff --git a/debian/patches/0036-Protect-against-continuing-to-read-from-a-file-at-EO.patch b/debian/patches/0036-Protect-against-continuing-to-read-from-a-file-at-EO.patch
deleted file mode 100644
index 61d370e84..000000000
--- a/debian/patches/0036-Protect-against-continuing-to-read-from-a-file-at-EO.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 5b2890774c0879bd62ee4abb6c8d87e5c6abcb36 Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Wed, 9 Jan 2019 13:26:37 -0500
-Subject: Protect against continuing to read from a file at EOF (Issue #5473)
-
-Fixed a potential memory leak when reading at the end of a file
----
- cups/file.c | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
-
-diff --git a/cups/file.c b/cups/file.c
-index 5c9ddf8fe..f67a6668e 100644
---- a/cups/file.c
-+++ b/cups/file.c
-@@ -679,6 +679,12 @@ cupsFileGetChar(cups_file_t *fp) /* I - CUPS file */
- return (-1);
- }
-
-+ if (fp->eof)
-+ {
-+ DEBUG_puts("5cupsFileGetChar: End-of-file!");
-+ return (-1);
-+ }
-+
- /*
- * If the input buffer is empty, try to read more data...
- */
-@@ -1651,6 +1657,12 @@ cupsFileRead(cups_file_t *fp, /* I - CUPS file */
- if (bytes == 0)
- return (0);
-
-+ if (fp->eof)
-+ {
-+ DEBUG_puts("5cupsFileRead: End-of-file!");
-+ return (-1);
-+ }
-+
- /*
- * Loop until all bytes are read...
- */
diff --git a/debian/patches/0037-Use-the-same-requested-attributes-values-for-all-IPP.patch b/debian/patches/0037-Use-the-same-requested-attributes-values-for-all-IPP.patch
deleted file mode 100644
index d26c4b69a..000000000
--- a/debian/patches/0037-Use-the-same-requested-attributes-values-for-all-IPP.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-From 2f25fc8b426f4b97f549d8ad2b84be9850aa709a Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Mon, 21 Jan 2019 11:28:24 -0500
-Subject: Use the same requested-attributes values for all IPP Everywhere setup
- requests (Issue #5484)
-
-The lpadmin command, web interface, and scheduler all queried an IPP
-Everywhere printer differently, resulting in different PPDs for the same
-printer
-
-Switch to using "all" and "media-col-database" because some vendors apparently
-do not know how to read
----
- cgi-bin/admin.c | 10 ++++++++--
- scheduler/ipp.c | 9 +++++++--
- systemv/lpadmin.c | 6 ++----
- 3 files changed, 17 insertions(+), 8 deletions(-)
-
-diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c
-index 00830e486..690fbbc73 100644
---- a/cgi-bin/admin.c
-+++ b/cgi-bin/admin.c
-@@ -1,8 +1,8 @@
- /*
- * Administration CGI for CUPS.
- *
-- * Copyright 2007-2018 by Apple Inc.
-- * Copyright 1997-2007 by Easy Software Products.
-+ * Copyright © 2007-2019 by Apple Inc.
-+ * Copyright © 1997-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
-@@ -4224,6 +4224,11 @@ get_printer_ppd(const char *uri, /* I - Printer URI */
- host[256], /* Hostname */
- resource[256]; /* Resource path */
- int port; /* Port number */
-+ static const char * const pattrs[] = /* Printer attributes we need */
-+ {
-+ "all",
-+ "media-col-database"
-+ };
-
-
- /*
-@@ -4264,6 +4269,7 @@ get_printer_ppd(const char *uri, /* I - Printer URI */
-
- request = ippNewRequest(IPP_OP_GET_PRINTER_ATTRIBUTES);
- ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, uri);
-+ ippAddStrings(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD, "requested-attributes", (int)(sizeof(pattrs) / sizeof(pattrs[0])), NULL, pattrs);
- response = cupsDoRequest(http, request, resource);
-
- if (!_ppdCreateFromIPP(buffer, bufsize, response))
-diff --git a/scheduler/ipp.c b/scheduler/ipp.c
-index 6ea3e37f2..e00275b09 100644
---- a/scheduler/ipp.c
-+++ b/scheduler/ipp.c
-@@ -1,7 +1,7 @@
- /*
- * IPP routines for the CUPS scheduler.
- *
-- * Copyright © 2007-2018 by Apple Inc.
-+ * Copyright © 2007-2019 by Apple Inc.
- * Copyright © 1997-2007 by Easy Software Products, all rights reserved.
- *
- * This file contains Kerberos support code, copyright 2006 by
-@@ -5279,6 +5279,11 @@ create_local_bg_thread(
- *response; /* Response from printer */
- ipp_attribute_t *attr; /* Attribute in response */
- ipp_status_t status; /* Status code */
-+ static const char * const pattrs[] = /* Printer attributes we need */
-+ {
-+ "all",
-+ "media-col-database"
-+ };
-
-
- /*
-@@ -5313,7 +5318,7 @@ create_local_bg_thread(
- request = ippNewRequest(IPP_OP_GET_PRINTER_ATTRIBUTES);
- ippSetVersion(request, 2, 0);
- ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, printer->device_uri);
-- ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD, "requested-attributes", NULL, "all");
-+ ippAddStrings(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD, "requested-attributes", (int)(sizeof(pattrs) / sizeof(pattrs[0])), NULL, pattrs);
-
- response = cupsDoRequest(http, request, resource);
- status = cupsLastError();
-diff --git a/systemv/lpadmin.c b/systemv/lpadmin.c
-index ee2438c1d..e979e56c4 100644
---- a/systemv/lpadmin.c
-+++ b/systemv/lpadmin.c
-@@ -1,7 +1,7 @@
- /*
- * "lpadmin" command for CUPS.
- *
-- * Copyright © 2007-2018 by Apple Inc.
-+ * Copyright © 2007-2019 by Apple Inc.
- * Copyright © 1997-2006 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
-@@ -1194,9 +1194,7 @@ get_printer_ppd(
- int port; /* Port number */
- static const char * const pattrs[] = /* Attributes to use */
- {
-- "job-template",
-- "printer-defaults",
-- "printer-description",
-+ "all",
- "media-col-database"
- };
-
diff --git a/debian/patches/0038-Add-a-USB-quirk-rule-for-the-Lexmark-E120n-Issue-547.patch b/debian/patches/0038-Add-a-USB-quirk-rule-for-the-Lexmark-E120n-Issue-547.patch
deleted file mode 100644
index 480594d9a..000000000
--- a/debian/patches/0038-Add-a-USB-quirk-rule-for-the-Lexmark-E120n-Issue-547.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From 62283fab59e63c2be87171bc36c00717a91b7663 Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Mon, 21 Jan 2019 11:32:42 -0500
-Subject: Add a USB quirk rule for the Lexmark E120n (Issue #5478)
-
----
- backend/org.cups.usb-quirks | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/backend/org.cups.usb-quirks b/backend/org.cups.usb-quirks
-index 3f99f60de..00d3b2545 100644
---- a/backend/org.cups.usb-quirks
-+++ b/backend/org.cups.usb-quirks
-@@ -293,3 +293,6 @@
-
- # Zebra ZD420 (Issue #5395)
- 0x0a5f 0x0120 unidir no-reattach
-+
-+# Lexmark E120n (Issue #5478)
-+0x043d 0x00cc no-reattach
diff --git a/debian/patches/0039-Updated-the-USB-quirks-rule-for-Zebra-label-printers.patch b/debian/patches/0039-Updated-the-USB-quirks-rule-for-Zebra-label-printers.patch
deleted file mode 100644
index 73530b0c7..000000000
--- a/debian/patches/0039-Updated-the-USB-quirks-rule-for-Zebra-label-printers.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From d218d3e75bea23c39ab48cb44799db13267b9c94 Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Wed, 23 Jan 2019 11:15:29 -0500
-Subject: Updated the USB quirks rule for Zebra label printers (Issue #5395)
-
-Now all Zebra label printers use unidir and no-reattach.
----
- backend/org.cups.usb-quirks | 7 ++-----
- 1 file changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/backend/org.cups.usb-quirks b/backend/org.cups.usb-quirks
-index 00d3b2545..0586602ab 100644
---- a/backend/org.cups.usb-quirks
-+++ b/backend/org.cups.usb-quirks
-@@ -140,8 +140,8 @@
- # Samsung ML-2160 Series (https://bugzilla.redhat.com/show_bug.cgi?id=873123)
- 0x04e8 0x330f unidir
-
--# All Zebra devices (https://bugs.launchpad.net/bugs/1001028)
--0x0a5f unidir
-+# All Zebra devices (https://bugs.launchpad.net/bugs/1001028) (Issue #5395)
-+0x0a5f unidir no-reattach
-
- # Canon CP-10
- 0x04a9 0x304a blacklist
-@@ -291,8 +291,5 @@
- # Star TSP743 (Issue #5443)
- 0x0519 0x0001 delay-close
-
--# Zebra ZD420 (Issue #5395)
--0x0a5f 0x0120 unidir no-reattach
--
- # Lexmark E120n (Issue #5478)
- 0x043d 0x00cc no-reattach
diff --git a/debian/patches/0040-Add-USB-quirks-rule-for-Xerox-printers-Issue-5523.patch b/debian/patches/0040-Add-USB-quirks-rule-for-Xerox-printers-Issue-5523.patch
deleted file mode 100644
index 515af009d..000000000
--- a/debian/patches/0040-Add-USB-quirks-rule-for-Xerox-printers-Issue-5523.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From f8eac850dfbdb4a8d6a02f4d5eb2a473e7b088b4 Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Tue, 19 Feb 2019 11:11:54 -0500
-Subject: Add USB quirks rule for Xerox printers (Issue #5523)
-
----
- backend/org.cups.usb-quirks | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/backend/org.cups.usb-quirks b/backend/org.cups.usb-quirks
-index 0586602ab..77233ea18 100644
---- a/backend/org.cups.usb-quirks
-+++ b/backend/org.cups.usb-quirks
-@@ -293,3 +293,6 @@
-
- # Lexmark E120n (Issue #5478)
- 0x043d 0x00cc no-reattach
-+
-+# All Xerox printers (Issue #5523)
-+0x0924 no-reattach
diff --git a/debian/patches/0041-Add-a-USB-quirks-rule-for-the-DYMO-450-Turbo-Issue-5.patch b/debian/patches/0041-Add-a-USB-quirks-rule-for-the-DYMO-450-Turbo-Issue-5.patch
deleted file mode 100644
index ad790c8b8..000000000
--- a/debian/patches/0041-Add-a-USB-quirks-rule-for-the-DYMO-450-Turbo-Issue-5.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From d4d7ff4dad47ad4d278ca2c84efd602354a4e627 Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Thu, 21 Feb 2019 09:54:59 -0500
-Subject: Add a USB quirks rule for the DYMO 450 Turbo (Issue #5521)
-
----
- backend/org.cups.usb-quirks | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/backend/org.cups.usb-quirks b/backend/org.cups.usb-quirks
-index 77233ea18..44d6bb8cb 100644
---- a/backend/org.cups.usb-quirks
-+++ b/backend/org.cups.usb-quirks
-@@ -296,3 +296,6 @@
-
- # All Xerox printers (Issue #5523)
- 0x0924 no-reattach
-+
-+# Dymo 450 Turbo (Issue #5521)
-+0x0922 0x0021 unidir
diff --git a/debian/patches/0042-Fix-compile-error-on-Linux-Issue-5483.patch b/debian/patches/0042-Fix-compile-error-on-Linux-Issue-5483.patch
deleted file mode 100644
index d7810fd01..000000000
--- a/debian/patches/0042-Fix-compile-error-on-Linux-Issue-5483.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 6f2402e51d47e9cebe27eec5bfdb0e5543127e2a Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Mon, 21 Jan 2019 11:54:58 -0500
-Subject: Fix compile error on Linux (Issue #5483)
-
----
- cups/hash.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/cups/hash.c b/cups/hash.c
-index 50dc5fb30..a31372595 100644
---- a/cups/hash.c
-+++ b/cups/hash.c
-@@ -1,7 +1,7 @@
- /*
- * Hashing function for CUPS.
- *
-- * Copyright © 2015-2018 by Apple Inc.
-+ * Copyright © 2015-2019 by Apple Inc.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
-@@ -235,7 +235,7 @@ cupsHashData(const char *algorithm, /* I - Algorithm name */
-
- gnutls_hash_fast(alg, data, datalen, hash);
-
-- return (gnutls_hash_get_len(alg));
-+ return ((ssize_t)gnutls_hash_get_len(alg));
- }
-
- #else
diff --git a/debian/patches/0043-Stop-parsing-the-Emulators-keywords-in-PPD-files-Iss.patch b/debian/patches/0043-Stop-parsing-the-Emulators-keywords-in-PPD-files-Iss.patch
deleted file mode 100644
index 95378ee79..000000000
--- a/debian/patches/0043-Stop-parsing-the-Emulators-keywords-in-PPD-files-Iss.patch
+++ /dev/null
@@ -1,159 +0,0 @@
-From fb2f9b86fabc11f9b0fad804199064bdd555201e Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Mon, 21 Jan 2019 13:44:43 -0500
-Subject: Stop parsing the Emulators keywords in PPD files (Issue #5475)
-
-This also addresses a potential memory leak...
----
- cups/ppd.c | 76 ++----------------------------------------------------
- cups/ppd.h | 8 +++---
- 2 files changed, 6 insertions(+), 78 deletions(-)
-
-diff --git a/cups/ppd.c b/cups/ppd.c
-index 5f27484aa..968ea8bf3 100644
---- a/cups/ppd.c
-+++ b/cups/ppd.c
-@@ -1,8 +1,8 @@
- /*
- * PPD file routines for CUPS.
- *
-- * Copyright 2007-2018 by Apple Inc.
-- * Copyright 1997-2007 by Easy Software Products, all rights reserved.
-+ * Copyright © 2007-2019 by Apple Inc.
-+ * Copyright © 1997-2007 by Easy Software Products, all rights reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
-@@ -117,7 +117,6 @@ void
- ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- {
- int i; /* Looping var */
-- ppd_emul_t *emul; /* Current emulation */
- ppd_group_t *group; /* Current group */
- char **font; /* Current font */
- ppd_attr_t **attr; /* Current attribute */
-@@ -144,21 +143,6 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- _cupsStrFree(ppd->jcl_end);
- _cupsStrFree(ppd->jcl_ps);
-
-- /*
-- * Free any emulations...
-- */
--
-- if (ppd->num_emulations > 0)
-- {
-- for (i = ppd->num_emulations, emul = ppd->emulations; i > 0; i --, emul ++)
-- {
-- _cupsStrFree(emul->start);
-- _cupsStrFree(emul->stop);
-- }
--
-- ppd_free(ppd->emulations);
-- }
--
- /*
- * Free any UI groups, subgroups, and options...
- */
-@@ -443,7 +427,6 @@ _ppdOpen(
- _ppd_localization_t localization) /* I - Localization to load */
- {
- int i, j, k; /* Looping vars */
-- int count; /* Temporary count */
- _ppd_line_t line; /* Line buffer */
- ppd_file_t *ppd; /* PPD file record */
- ppd_group_t *group, /* Current group */
-@@ -461,7 +444,6 @@ _ppdOpen(
- /* Human-readable text from file */
- *string, /* Code/text from file */
- *sptr, /* Pointer into string */
-- *nameptr, /* Pointer into name */
- *temp, /* Temporary string pointer */
- **tempfonts; /* Temporary fonts pointer */
- float order; /* Order dependency number */
-@@ -1203,60 +1185,6 @@ _ppdOpen(
- else if (!strcmp(string, "Plus90"))
- ppd->landscape = 90;
- }
-- else if (!strcmp(keyword, "Emulators") && string)
-- {
-- for (count = 1, sptr = string; sptr != NULL;)
-- if ((sptr = strchr(sptr, ' ')) != NULL)
-- {
-- count ++;
-- while (*sptr == ' ')
-- sptr ++;
-- }
--
-- ppd->num_emulations = count;
-- if ((ppd->emulations = calloc((size_t)count, sizeof(ppd_emul_t))) == NULL)
-- {
-- pg->ppd_status = PPD_ALLOC_ERROR;
--
-- goto error;
-- }
--
-- for (i = 0, sptr = string; i < count; i ++)
-- {
-- for (nameptr = ppd->emulations[i].name;
-- *sptr != '\0' && *sptr != ' ';
-- sptr ++)
-- if (nameptr < (ppd->emulations[i].name + sizeof(ppd->emulations[i].name) - 1))
-- *nameptr++ = *sptr;
--
-- *nameptr = '\0';
--
-- while (*sptr == ' ')
-- sptr ++;
-- }
-- }
-- else if (!strncmp(keyword, "StartEmulator_", 14))
-- {
-- ppd_decode(string);
--
-- for (i = 0; i < ppd->num_emulations; i ++)
-- if (!strcmp(keyword + 14, ppd->emulations[i].name))
-- {
-- ppd->emulations[i].start = string;
-- string = NULL;
-- }
-- }
-- else if (!strncmp(keyword, "StopEmulator_", 13))
-- {
-- ppd_decode(string);
--
-- for (i = 0; i < ppd->num_emulations; i ++)
-- if (!strcmp(keyword + 13, ppd->emulations[i].name))
-- {
-- ppd->emulations[i].stop = string;
-- string = NULL;
-- }
-- }
- else if (!strcmp(keyword, "JobPatchFile"))
- {
- /*
-diff --git a/cups/ppd.h b/cups/ppd.h
-index 6e628cb60..ae63c0d66 100644
---- a/cups/ppd.h
-+++ b/cups/ppd.h
-@@ -5,8 +5,8 @@
- * -D_PPD_DEPRECATED="" TO YOUR COMPILE OPTIONS. THIS HEADER AND THESE
- * FUNCTIONS WILL BE REMOVED IN A FUTURE RELEASE OF CUPS.
- *
-- * Copyright 2007-2015 by Apple Inc.
-- * Copyright 1997-2007 by Easy Software Products, all rights reserved.
-+ * Copyright © 2007-2019 by Apple Inc.
-+ * Copyright © 1997-2007 by Easy Software Products, all rights reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
-@@ -304,8 +304,8 @@ typedef struct ppd_file_s /**** PPD File ****/
- int throughput; /* Pages per minute */
- ppd_cs_t colorspace; /* Default colorspace */
- char *patches; /* Patch commands to be sent to printer */
-- int num_emulations; /* Number of emulations supported */
-- ppd_emul_t *emulations; /* Emulations and the code to invoke them */
-+ int num_emulations; /* Number of emulations supported (no longer supported) @private@ */
-+ ppd_emul_t *emulations; /* Emulations and the code to invoke them (no longer supported) @private@ */
- char *jcl_begin; /* Start JCL commands */
- char *jcl_ps; /* Enter PostScript interpreter */
- char *jcl_end; /* End JCL commands */
diff --git a/debian/patches/0044-Fix-potential-unaligned-accesses-in-the-string-pool-.patch b/debian/patches/0044-Fix-potential-unaligned-accesses-in-the-string-pool-.patch
deleted file mode 100644
index 5f77f3cc8..000000000
--- a/debian/patches/0044-Fix-potential-unaligned-accesses-in-the-string-pool-.patch
+++ /dev/null
@@ -1,1130 +0,0 @@
-From ffbb46708544f6408bc72f200aa7365ba1222f97 Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Mon, 21 Jan 2019 14:21:57 -0500
-Subject: Fix potential unaligned accesses in the string pool (Issue #5474)
-
-This set of changes makes the PPD functions use strdup and free - they were
-modifying the contents of the string in places and doing other things that
-were not safe for (immutable) strings in the pool.
-
-Clean out some more _cupsStr cruft that might potentially cause an unaligned memory access (Issue #5474)
-
-Don't directly use the string pool in the CGI programs or scheduler.
----
- cgi-bin/admin.c | 12 ++---
- cgi-bin/var.c | 42 +++++++--------
- cups/ppd-cache.c | 134 +++++++++++++++++++++--------------------------
- cups/ppd-mark.c | 12 ++---
- cups/ppd.c | 115 ++++++++++++++++++++--------------------
- cups/string.c | 21 ++++----
- scheduler/ipp.c | 8 +--
- 7 files changed, 161 insertions(+), 183 deletions(-)
-
-diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c
-index 690fbbc73..06199a96b 100644
---- a/cgi-bin/admin.c
-+++ b/cgi-bin/admin.c
-@@ -767,7 +767,7 @@ do_am_class(http_t *http, /* I - HTTP connection */
- attr = ippAddStrings(request, IPP_TAG_PRINTER, IPP_TAG_URI, "member-uris",
- num_printers, NULL, NULL);
- for (i = 0; i < num_printers; i ++)
-- attr->values[i].string.text = _cupsStrAlloc(cgiGetArray("MEMBER_URIS", i));
-+ ippSetString(request, &attr, i, cgiGetArray("MEMBER_URIS", i));
- }
-
- /*
-@@ -2417,7 +2417,7 @@ do_list_printers(http_t *http) /* I - HTTP connection */
- attr;
- attr = ippFindNextAttribute(response, "device-uri", IPP_TAG_URI))
- {
-- cupsArrayAdd(printer_devices, _cupsStrAlloc(attr->values[0].string.text));
-+ cupsArrayAdd(printer_devices, strdup(attr->values[0].string.text));
- }
-
- /*
-@@ -2555,7 +2555,7 @@ do_list_printers(http_t *http) /* I - HTTP connection */
- for (printer_device = (char *)cupsArrayFirst(printer_devices);
- printer_device;
- printer_device = (char *)cupsArrayNext(printer_devices))
-- _cupsStrFree(printer_device);
-+ free(printer_device);
-
- cupsArrayDelete(printer_devices);
- }
-@@ -2952,7 +2952,7 @@ do_set_allowed_users(http_t *http) /* I - HTTP connection */
- * Add the name...
- */
-
-- attr->values[i].string.text = _cupsStrAlloc(ptr);
-+ ippSetString(request, &attr, i, ptr);
-
- /*
- * Advance to the next name...
-@@ -3761,8 +3761,8 @@ do_set_options(http_t *http, /* I - HTTP connection */
-
- attr = ippAddStrings(request, IPP_TAG_PRINTER, IPP_TAG_NAME,
- "job-sheets-default", 2, NULL, NULL);
-- attr->values[0].string.text = _cupsStrAlloc(cgiGetVariable("job_sheets_start"));
-- attr->values[1].string.text = _cupsStrAlloc(cgiGetVariable("job_sheets_end"));
-+ ippSetString(request, &attr, 0, cgiGetVariable("job_sheets_start"));
-+ ippSetString(request, &attr, 1, cgiGetVariable("job_sheets_end"));
-
- if ((var = cgiGetVariable("printer_error_policy")) != NULL)
- ippAddString(request, IPP_TAG_PRINTER, IPP_TAG_NAME,
-diff --git a/cgi-bin/var.c b/cgi-bin/var.c
-index 579f23ba3..8b8f26472 100644
---- a/cgi-bin/var.c
-+++ b/cgi-bin/var.c
-@@ -1,8 +1,8 @@
- /*
- * CGI form variable and array functions for CUPS.
- *
-- * Copyright 2007-2015 by Apple Inc.
-- * Copyright 1997-2005 by Easy Software Products.
-+ * Copyright © 2007-2019 by Apple Inc.
-+ * Copyright © 1997-2005 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
-@@ -33,10 +33,10 @@
-
- typedef struct /**** Form variable structure ****/
- {
-- const char *name; /* Name of variable */
-+ char *name; /* Name of variable */
- int nvalues, /* Number of values */
- avalues; /* Number of values allocated */
-- const char **values; /* Value(s) of variable */
-+ char **values; /* Value(s) of variable */
- } _cgi_var_t;
-
-
-@@ -139,10 +139,10 @@ cgiClearVariables(void)
-
- for (v = form_vars, i = form_count; i > 0; v ++, i --)
- {
-- _cupsStrFree(v->name);
-+ free(v->name);
- for (j = 0; j < v->nvalues; j ++)
- if (v->values[j])
-- _cupsStrFree(v->values[j]);
-+ free(v->values[j]);
- }
-
- form_count = 0;
-@@ -168,7 +168,7 @@ cgiGetArray(const char *name, /* I - Name of array variable */
- if (element < 0 || element >= var->nvalues)
- return (NULL);
-
-- return (_cupsStrRetain(var->values[element]));
-+ return (strdup(var->values[element]));
- }
-
-
-@@ -234,7 +234,7 @@ cgiGetVariable(const char *name) /* I - Name of variable */
- var->values[var->nvalues - 1]));
- #endif /* DEBUG */
-
-- return ((var == NULL) ? NULL : _cupsStrRetain(var->values[var->nvalues - 1]));
-+ return ((var == NULL) ? NULL : strdup(var->values[var->nvalues - 1]));
- }
-
-
-@@ -382,10 +382,9 @@ cgiSetArray(const char *name, /* I - Name of variable */
- {
- if (element >= var->avalues)
- {
-- const char **temp; /* Temporary pointer */
-+ char **temp; /* Temporary pointer */
-
-- temp = (const char **)realloc((void *)(var->values),
-- sizeof(char *) * (size_t)(element + 16));
-+ temp = (char **)realloc((void *)(var->values), sizeof(char *) * (size_t)(element + 16));
- if (!temp)
- return;
-
-@@ -401,9 +400,9 @@ cgiSetArray(const char *name, /* I - Name of variable */
- var->nvalues = element + 1;
- }
- else if (var->values[element])
-- _cupsStrFree((char *)var->values[element]);
-+ free((char *)var->values[element]);
-
-- var->values[element] = _cupsStrAlloc(value);
-+ var->values[element] = strdup(value);
- }
- }
-
-@@ -460,10 +459,9 @@ cgiSetSize(const char *name, /* I - Name of variable */
-
- if (size >= var->avalues)
- {
-- const char **temp; /* Temporary pointer */
-+ char **temp; /* Temporary pointer */
-
-- temp = (const char **)realloc((void *)(var->values),
-- sizeof(char *) * (size_t)(size + 16));
-+ temp = (char **)realloc((void *)(var->values), sizeof(char *) * (size_t)(size + 16));
- if (!temp)
- return;
-
-@@ -480,7 +478,7 @@ cgiSetSize(const char *name, /* I - Name of variable */
- {
- for (i = size; i < var->nvalues; i ++)
- if (var->values[i])
-- _cupsStrFree((void *)(var->values[i]));
-+ free((void *)(var->values[i]));
- }
-
- var->nvalues = size;
-@@ -515,9 +513,9 @@ cgiSetVariable(const char *name, /* I - Name of variable */
- {
- for (i = 0; i < var->nvalues; i ++)
- if (var->values[i])
-- _cupsStrFree((char *)var->values[i]);
-+ free((char *)var->values[i]);
-
-- var->values[0] = _cupsStrAlloc(value);
-+ var->values[0] = strdup(value);
- var->nvalues = 1;
- }
- }
-@@ -563,10 +561,10 @@ cgi_add_variable(const char *name, /* I - Variable name */
- if ((var->values = calloc((size_t)element + 1, sizeof(char *))) == NULL)
- return;
-
-- var->name = _cupsStrAlloc(name);
-+ var->name = strdup(name);
- var->nvalues = element + 1;
- var->avalues = element + 1;
-- var->values[element] = _cupsStrAlloc(value);
-+ var->values[element] = strdup(value);
-
- form_count ++;
- }
-@@ -598,7 +596,7 @@ cgi_find_variable(const char *name) /* I - Name of variable */
- if (form_count < 1 || name == NULL)
- return (NULL);
-
-- key.name = name;
-+ key.name = (char *)name;
-
- return ((_cgi_var_t *)bsearch(&key, form_vars, (size_t)form_count, sizeof(_cgi_var_t),
- (int (*)(const void *, const void *))cgi_compare_variables));
-diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
-index ab91f0fd4..8b496e3b2 100644
---- a/cups/ppd-cache.c
-+++ b/cups/ppd-cache.c
-@@ -1,7 +1,7 @@
- /*
- * PPD cache implementation for CUPS.
- *
-- * Copyright © 2010-2018 by Apple Inc.
-+ * Copyright © 2010-2019 by Apple Inc.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
-@@ -508,24 +508,20 @@ _ppdCacheCreateWithFile(
- else if (!_cups_strcasecmp(line, "Filter"))
- {
- if (!pc->filters)
-- pc->filters = cupsArrayNew3(NULL, NULL, NULL, 0,
-- (cups_acopy_func_t)_cupsStrAlloc,
-- (cups_afree_func_t)_cupsStrFree);
-+ pc->filters = cupsArrayNew3(NULL, NULL, NULL, 0, (cups_acopy_func_t)strdup, (cups_afree_func_t)free);
-
- cupsArrayAdd(pc->filters, value);
- }
- else if (!_cups_strcasecmp(line, "PreFilter"))
- {
- if (!pc->prefilters)
-- pc->prefilters = cupsArrayNew3(NULL, NULL, NULL, 0,
-- (cups_acopy_func_t)_cupsStrAlloc,
-- (cups_afree_func_t)_cupsStrFree);
-+ pc->prefilters = cupsArrayNew3(NULL, NULL, NULL, 0, (cups_acopy_func_t)strdup, (cups_afree_func_t)free);
-
- cupsArrayAdd(pc->prefilters, value);
- }
- else if (!_cups_strcasecmp(line, "Product"))
- {
-- pc->product = _cupsStrAlloc(value);
-+ pc->product = strdup(value);
- }
- else if (!_cups_strcasecmp(line, "SingleFile"))
- {
-@@ -625,8 +621,8 @@ _ppdCacheCreateWithFile(
- }
-
- map = pc->bins + pc->num_bins;
-- map->pwg = _cupsStrAlloc(pwg_keyword);
-- map->ppd = _cupsStrAlloc(ppd_keyword);
-+ map->pwg = strdup(pwg_keyword);
-+ map->ppd = strdup(ppd_keyword);
-
- pc->num_bins ++;
- }
-@@ -680,8 +676,8 @@ _ppdCacheCreateWithFile(
- goto create_error;
- }
-
-- size->map.pwg = _cupsStrAlloc(pwg_keyword);
-- size->map.ppd = _cupsStrAlloc(ppd_keyword);
-+ size->map.pwg = strdup(pwg_keyword);
-+ size->map.ppd = strdup(ppd_keyword);
-
- pc->num_sizes ++;
- }
-@@ -709,15 +705,15 @@ _ppdCacheCreateWithFile(
-
- pwgFormatSizeName(pwg_keyword, sizeof(pwg_keyword), "custom", "max",
- pc->custom_max_width, pc->custom_max_length, NULL);
-- pc->custom_max_keyword = _cupsStrAlloc(pwg_keyword);
-+ pc->custom_max_keyword = strdup(pwg_keyword);
-
- pwgFormatSizeName(pwg_keyword, sizeof(pwg_keyword), "custom", "min",
- pc->custom_min_width, pc->custom_min_length, NULL);
-- pc->custom_min_keyword = _cupsStrAlloc(pwg_keyword);
-+ pc->custom_min_keyword = strdup(pwg_keyword);
- }
- else if (!_cups_strcasecmp(line, "SourceOption"))
- {
-- pc->source_option = _cupsStrAlloc(value);
-+ pc->source_option = strdup(value);
- }
- else if (!_cups_strcasecmp(line, "NumSources"))
- {
-@@ -764,8 +760,8 @@ _ppdCacheCreateWithFile(
- }
-
- map = pc->sources + pc->num_sources;
-- map->pwg = _cupsStrAlloc(pwg_keyword);
-- map->ppd = _cupsStrAlloc(ppd_keyword);
-+ map->pwg = strdup(pwg_keyword);
-+ map->ppd = strdup(ppd_keyword);
-
- pc->num_sources ++;
- }
-@@ -813,8 +809,8 @@ _ppdCacheCreateWithFile(
- }
-
- map = pc->types + pc->num_types;
-- map->pwg = _cupsStrAlloc(pwg_keyword);
-- map->ppd = _cupsStrAlloc(ppd_keyword);
-+ map->pwg = strdup(pwg_keyword);
-+ map->ppd = strdup(ppd_keyword);
-
- pc->num_types ++;
- }
-@@ -844,13 +840,13 @@ _ppdCacheCreateWithFile(
- pc->presets[print_color_mode] + print_quality);
- }
- else if (!_cups_strcasecmp(line, "SidesOption"))
-- pc->sides_option = _cupsStrAlloc(value);
-+ pc->sides_option = strdup(value);
- else if (!_cups_strcasecmp(line, "Sides1Sided"))
-- pc->sides_1sided = _cupsStrAlloc(value);
-+ pc->sides_1sided = strdup(value);
- else if (!_cups_strcasecmp(line, "Sides2SidedLong"))
-- pc->sides_2sided_long = _cupsStrAlloc(value);
-+ pc->sides_2sided_long = strdup(value);
- else if (!_cups_strcasecmp(line, "Sides2SidedShort"))
-- pc->sides_2sided_short = _cupsStrAlloc(value);
-+ pc->sides_2sided_short = strdup(value);
- else if (!_cups_strcasecmp(line, "Finishings"))
- {
- if (!pc->finishings)
-@@ -871,13 +867,13 @@ _ppdCacheCreateWithFile(
- else if (!_cups_strcasecmp(line, "MaxCopies"))
- pc->max_copies = atoi(value);
- else if (!_cups_strcasecmp(line, "ChargeInfoURI"))
-- pc->charge_info_uri = _cupsStrAlloc(value);
-+ pc->charge_info_uri = strdup(value);
- else if (!_cups_strcasecmp(line, "JobAccountId"))
- pc->account_id = !_cups_strcasecmp(value, "true");
- else if (!_cups_strcasecmp(line, "JobAccountingUserId"))
- pc->accounting_user_id = !_cups_strcasecmp(value, "true");
- else if (!_cups_strcasecmp(line, "JobPassword"))
-- pc->password = _cupsStrAlloc(value);
-+ pc->password = strdup(value);
- else if (!_cups_strcasecmp(line, "Mandatory"))
- {
- if (pc->mandatory)
-@@ -888,9 +884,7 @@ _ppdCacheCreateWithFile(
- else if (!_cups_strcasecmp(line, "SupportFile"))
- {
- if (!pc->support_files)
-- pc->support_files = cupsArrayNew3(NULL, NULL, NULL, 0,
-- (cups_acopy_func_t)_cupsStrAlloc,
-- (cups_afree_func_t)_cupsStrFree);
-+ pc->support_files = cupsArrayNew3(NULL, NULL, NULL, 0, (cups_acopy_func_t)strdup, (cups_afree_func_t)free);
-
- cupsArrayAdd(pc->support_files, value);
- }
-@@ -1130,8 +1124,8 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- */
-
- new_size = old_size;
-- _cupsStrFree(old_size->map.ppd);
-- _cupsStrFree(old_size->map.pwg);
-+ free(old_size->map.ppd);
-+ free(old_size->map.pwg);
- }
- }
-
-@@ -1152,8 +1146,8 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- * Save this size...
- */
-
-- new_size->map.ppd = _cupsStrAlloc(ppd_size->name);
-- new_size->map.pwg = _cupsStrAlloc(pwg_name);
-+ new_size->map.ppd = strdup(ppd_size->name);
-+ new_size->map.pwg = strdup(pwg_name);
- new_size->width = new_width;
- new_size->length = new_length;
- new_size->left = new_left;
-@@ -1173,14 +1167,14 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- pwgFormatSizeName(pwg_keyword, sizeof(pwg_keyword), "custom", "max",
- PWG_FROM_POINTS(ppd->custom_max[0]),
- PWG_FROM_POINTS(ppd->custom_max[1]), NULL);
-- pc->custom_max_keyword = _cupsStrAlloc(pwg_keyword);
-+ pc->custom_max_keyword = strdup(pwg_keyword);
- pc->custom_max_width = PWG_FROM_POINTS(ppd->custom_max[0]);
- pc->custom_max_length = PWG_FROM_POINTS(ppd->custom_max[1]);
-
- pwgFormatSizeName(pwg_keyword, sizeof(pwg_keyword), "custom", "min",
- PWG_FROM_POINTS(ppd->custom_min[0]),
- PWG_FROM_POINTS(ppd->custom_min[1]), NULL);
-- pc->custom_min_keyword = _cupsStrAlloc(pwg_keyword);
-+ pc->custom_min_keyword = strdup(pwg_keyword);
- pc->custom_min_width = PWG_FROM_POINTS(ppd->custom_min[0]);
- pc->custom_min_length = PWG_FROM_POINTS(ppd->custom_min[1]);
-
-@@ -1199,7 +1193,7 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
-
- if (input_slot)
- {
-- pc->source_option = _cupsStrAlloc(input_slot->keyword);
-+ pc->source_option = strdup(input_slot->keyword);
-
- if ((pc->sources = calloc((size_t)input_slot->num_choices, sizeof(pwg_map_t))) == NULL)
- {
-@@ -1251,8 +1245,8 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- "_");
- }
-
-- map->pwg = _cupsStrAlloc(pwg_name);
-- map->ppd = _cupsStrAlloc(choice->choice);
-+ map->pwg = strdup(pwg_name);
-+ map->ppd = strdup(choice->choice);
- }
- }
-
-@@ -1315,8 +1309,8 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- "_");
- }
-
-- map->pwg = _cupsStrAlloc(pwg_name);
-- map->ppd = _cupsStrAlloc(choice->choice);
-+ map->pwg = strdup(pwg_name);
-+ map->ppd = strdup(choice->choice);
- }
- }
-
-@@ -1342,8 +1336,8 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- {
- pwg_unppdize_name(choice->choice, pwg_keyword, sizeof(pwg_keyword), "_");
-
-- map->pwg = _cupsStrAlloc(pwg_keyword);
-- map->ppd = _cupsStrAlloc(choice->choice);
-+ map->pwg = strdup(pwg_keyword);
-+ map->ppd = strdup(choice->choice);
- }
- }
-
-@@ -1558,7 +1552,7 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
-
- if (duplex)
- {
-- pc->sides_option = _cupsStrAlloc(duplex->keyword);
-+ pc->sides_option = strdup(duplex->keyword);
-
- for (i = duplex->num_choices, choice = duplex->choices;
- i > 0;
-@@ -1566,16 +1560,16 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- {
- if ((!_cups_strcasecmp(choice->choice, "None") ||
- !_cups_strcasecmp(choice->choice, "False")) && !pc->sides_1sided)
-- pc->sides_1sided = _cupsStrAlloc(choice->choice);
-+ pc->sides_1sided = strdup(choice->choice);
- else if ((!_cups_strcasecmp(choice->choice, "DuplexNoTumble") ||
- !_cups_strcasecmp(choice->choice, "LongEdge") ||
- !_cups_strcasecmp(choice->choice, "Top")) && !pc->sides_2sided_long)
-- pc->sides_2sided_long = _cupsStrAlloc(choice->choice);
-+ pc->sides_2sided_long = strdup(choice->choice);
- else if ((!_cups_strcasecmp(choice->choice, "DuplexTumble") ||
- !_cups_strcasecmp(choice->choice, "ShortEdge") ||
- !_cups_strcasecmp(choice->choice, "Bottom")) &&
- !pc->sides_2sided_short)
-- pc->sides_2sided_short = _cupsStrAlloc(choice->choice);
-+ pc->sides_2sided_short = strdup(choice->choice);
- }
- }
-
-@@ -1583,9 +1577,7 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- * Copy filters and pre-filters...
- */
-
-- pc->filters = cupsArrayNew3(NULL, NULL, NULL, 0,
-- (cups_acopy_func_t)_cupsStrAlloc,
-- (cups_afree_func_t)_cupsStrFree);
-+ pc->filters = cupsArrayNew3(NULL, NULL, NULL, 0, (cups_acopy_func_t)strdup, (cups_afree_func_t)free);
-
- cupsArrayAdd(pc->filters,
- "application/vnd.cups-raw application/octet-stream 0 -");
-@@ -1642,9 +1634,7 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
-
- if ((ppd_attr = ppdFindAttr(ppd, "cupsPreFilter", NULL)) != NULL)
- {
-- pc->prefilters = cupsArrayNew3(NULL, NULL, NULL, 0,
-- (cups_acopy_func_t)_cupsStrAlloc,
-- (cups_afree_func_t)_cupsStrFree);
-+ pc->prefilters = cupsArrayNew3(NULL, NULL, NULL, 0, (cups_acopy_func_t)strdup, (cups_afree_func_t)free);
-
- do
- {
-@@ -1661,7 +1651,7 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- */
-
- if (ppd->product)
-- pc->product = _cupsStrAlloc(ppd->product);
-+ pc->product = strdup(ppd->product);
-
- /*
- * Copy finishings mapping data...
-@@ -1818,7 +1808,7 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- */
-
- if ((ppd_attr = ppdFindAttr(ppd, "cupsChargeInfoURI", NULL)) != NULL)
-- pc->charge_info_uri = _cupsStrAlloc(ppd_attr->value);
-+ pc->charge_info_uri = strdup(ppd_attr->value);
-
- if ((ppd_attr = ppdFindAttr(ppd, "cupsJobAccountId", NULL)) != NULL)
- pc->account_id = !_cups_strcasecmp(ppd_attr->value, "true");
-@@ -1827,7 +1817,7 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- pc->accounting_user_id = !_cups_strcasecmp(ppd_attr->value, "true");
-
- if ((ppd_attr = ppdFindAttr(ppd, "cupsJobPassword", NULL)) != NULL)
-- pc->password = _cupsStrAlloc(ppd_attr->value);
-+ pc->password = strdup(ppd_attr->value);
-
- if ((ppd_attr = ppdFindAttr(ppd, "cupsMandatory", NULL)) != NULL)
- pc->mandatory = _cupsArrayNewStrings(ppd_attr->value, ' ');
-@@ -1836,9 +1826,7 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
- * Support files...
- */
-
-- pc->support_files = cupsArrayNew3(NULL, NULL, NULL, 0,
-- (cups_acopy_func_t)_cupsStrAlloc,
-- (cups_afree_func_t)_cupsStrFree);
-+ pc->support_files = cupsArrayNew3(NULL, NULL, NULL, 0, (cups_acopy_func_t)strdup, (cups_afree_func_t)free);
-
- for (ppd_attr = ppdFindAttr(ppd, "cupsICCProfile", NULL);
- ppd_attr;
-@@ -1894,8 +1882,8 @@ _ppdCacheDestroy(_ppd_cache_t *pc) /* I - PPD cache and mapping data */
- {
- for (i = pc->num_bins, map = pc->bins; i > 0; i --, map ++)
- {
-- _cupsStrFree(map->pwg);
-- _cupsStrFree(map->ppd);
-+ free(map->pwg);
-+ free(map->ppd);
- }
-
- free(pc->bins);
-@@ -1905,22 +1893,21 @@ _ppdCacheDestroy(_ppd_cache_t *pc) /* I - PPD cache and mapping data */
- {
- for (i = pc->num_sizes, size = pc->sizes; i > 0; i --, size ++)
- {
-- _cupsStrFree(size->map.pwg);
-- _cupsStrFree(size->map.ppd);
-+ free(size->map.pwg);
-+ free(size->map.ppd);
- }
-
- free(pc->sizes);
- }
-
-- if (pc->source_option)
-- _cupsStrFree(pc->source_option);
-+ free(pc->source_option);
-
- if (pc->sources)
- {
- for (i = pc->num_sources, map = pc->sources; i > 0; i --, map ++)
- {
-- _cupsStrFree(map->pwg);
-- _cupsStrFree(map->ppd);
-+ free(map->pwg);
-+ free(map->ppd);
- }
-
- free(pc->sources);
-@@ -1930,26 +1917,23 @@ _ppdCacheDestroy(_ppd_cache_t *pc) /* I - PPD cache and mapping data */
- {
- for (i = pc->num_types, map = pc->types; i > 0; i --, map ++)
- {
-- _cupsStrFree(map->pwg);
-- _cupsStrFree(map->ppd);
-+ free(map->pwg);
-+ free(map->ppd);
- }
-
- free(pc->types);
- }
-
-- if (pc->custom_max_keyword)
-- _cupsStrFree(pc->custom_max_keyword);
--
-- if (pc->custom_min_keyword)
-- _cupsStrFree(pc->custom_min_keyword);
-+ free(pc->custom_max_keyword);
-+ free(pc->custom_min_keyword);
-
-- _cupsStrFree(pc->product);
-+ free(pc->product);
- cupsArrayDelete(pc->filters);
- cupsArrayDelete(pc->prefilters);
- cupsArrayDelete(pc->finishings);
-
-- _cupsStrFree(pc->charge_info_uri);
-- _cupsStrFree(pc->password);
-+ free(pc->charge_info_uri);
-+ free(pc->password);
-
- cupsArrayDelete(pc->mandatory);
-
-diff --git a/cups/ppd-mark.c b/cups/ppd-mark.c
-index 464c09a98..2d106ba9e 100644
---- a/cups/ppd-mark.c
-+++ b/cups/ppd-mark.c
-@@ -1,8 +1,8 @@
- /*
- * Option marking routines for CUPS.
- *
-- * Copyright 2007-2017 by Apple Inc.
-- * Copyright 1997-2007 by Easy Software Products, all rights reserved.
-+ * Copyright © 2007-2019 by Apple Inc.
-+ * Copyright © 1997-2007 by Easy Software Products, all rights reserved.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
-@@ -890,9 +890,9 @@ ppd_mark_option(ppd_file_t *ppd, /* I - PPD file */
- case PPD_CUSTOM_PASSWORD :
- case PPD_CUSTOM_STRING :
- if (cparam->current.custom_string)
-- _cupsStrFree(cparam->current.custom_string);
-+ free(cparam->current.custom_string);
-
-- cparam->current.custom_string = _cupsStrAlloc(choice + 7);
-+ cparam->current.custom_string = strdup(choice + 7);
- break;
- }
- }
-@@ -967,9 +967,9 @@ ppd_mark_option(ppd_file_t *ppd, /* I - PPD file */
- case PPD_CUSTOM_PASSWORD :
- case PPD_CUSTOM_STRING :
- if (cparam->current.custom_string)
-- _cupsStrFree(cparam->current.custom_string);
-+ free(cparam->current.custom_string);
-
-- cparam->current.custom_string = _cupsStrRetain(val->value);
-+ cparam->current.custom_string = strdup(val->value);
- break;
- }
- }
-diff --git a/cups/ppd.c b/cups/ppd.c
-index 968ea8bf3..435b992f4 100644
---- a/cups/ppd.c
-+++ b/cups/ppd.c
-@@ -34,8 +34,6 @@
- * Definitions...
- */
-
--#define ppd_free(p) if (p) free(p) /* Safe free macro */
--
- #define PPD_KEYWORD 1 /* Line contained a keyword */
- #define PPD_OPTION 2 /* Line contained an option name */
- #define PPD_TEXT 4 /* Line contained human-readable text */
-@@ -135,13 +133,12 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- * Free all strings at the top level...
- */
-
-- _cupsStrFree(ppd->lang_encoding);
-- _cupsStrFree(ppd->nickname);
-- if (ppd->patches)
-- free(ppd->patches);
-- _cupsStrFree(ppd->jcl_begin);
-- _cupsStrFree(ppd->jcl_end);
-- _cupsStrFree(ppd->jcl_ps);
-+ free(ppd->lang_encoding);
-+ free(ppd->nickname);
-+ free(ppd->patches);
-+ free(ppd->jcl_begin);
-+ free(ppd->jcl_end);
-+ free(ppd->jcl_ps);
-
- /*
- * Free any UI groups, subgroups, and options...
-@@ -152,7 +149,7 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- for (i = ppd->num_groups, group = ppd->groups; i > 0; i --, group ++)
- ppd_free_group(group);
-
-- ppd_free(ppd->groups);
-+ free(ppd->groups);
- }
-
- cupsArrayDelete(ppd->options);
-@@ -163,14 +160,14 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- */
-
- if (ppd->num_sizes > 0)
-- ppd_free(ppd->sizes);
-+ free(ppd->sizes);
-
- /*
- * Free any constraints...
- */
-
- if (ppd->num_consts > 0)
-- ppd_free(ppd->consts);
-+ free(ppd->consts);
-
- /*
- * Free any filters...
-@@ -185,9 +182,9 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- if (ppd->num_fonts > 0)
- {
- for (i = ppd->num_fonts, font = ppd->fonts; i > 0; i --, font ++)
-- _cupsStrFree(*font);
-+ free(*font);
-
-- ppd_free(ppd->fonts);
-+ free(ppd->fonts);
- }
-
- /*
-@@ -195,7 +192,7 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- */
-
- if (ppd->num_profiles > 0)
-- ppd_free(ppd->profiles);
-+ free(ppd->profiles);
-
- /*
- * Free any attributes...
-@@ -205,11 +202,11 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- {
- for (i = ppd->num_attrs, attr = ppd->attrs; i > 0; i --, attr ++)
- {
-- _cupsStrFree((*attr)->value);
-- ppd_free(*attr);
-+ free((*attr)->value);
-+ free(*attr);
- }
-
-- ppd_free(ppd->attrs);
-+ free(ppd->attrs);
- }
-
- cupsArrayDelete(ppd->sorted_attrs);
-@@ -231,7 +228,7 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- case PPD_CUSTOM_PASSCODE :
- case PPD_CUSTOM_PASSWORD :
- case PPD_CUSTOM_STRING :
-- _cupsStrFree(cparam->current.custom_string);
-+ free(cparam->current.custom_string);
- break;
-
- default :
-@@ -279,7 +276,7 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
- * Free the whole record...
- */
-
-- ppd_free(ppd);
-+ free(ppd);
- }
-
-
-@@ -617,15 +614,15 @@ _ppdOpen(
- if (pg->ppd_status == PPD_OK)
- pg->ppd_status = PPD_MISSING_PPDADOBE4;
-
-- _cupsStrFree(string);
-- ppd_free(line.buffer);
-+ free(string);
-+ free(line.buffer);
-
- return (NULL);
- }
-
- DEBUG_printf(("2_ppdOpen: keyword=%s, string=%p", keyword, string));
-
-- _cupsStrFree(string);
-+ free(string);
-
- /*
- * Allocate memory for the PPD file record...
-@@ -635,8 +632,8 @@ _ppdOpen(
- {
- pg->ppd_status = PPD_ALLOC_ERROR;
-
-- _cupsStrFree(string);
-- ppd_free(line.buffer);
-+ free(string);
-+ free(line.buffer);
-
- return (NULL);
- }
-@@ -833,7 +830,7 @@ _ppdOpen(
- * Say all PPD files are UTF-8, since we convert to UTF-8...
- */
-
-- ppd->lang_encoding = _cupsStrAlloc("UTF-8");
-+ ppd->lang_encoding = strdup("UTF-8");
- encoding = _ppdGetEncoding(string);
- }
- else if (!strcmp(keyword, "LanguageVersion"))
-@@ -854,10 +851,10 @@ _ppdOpen(
-
-
- cupsCharsetToUTF8(utf8, string, sizeof(utf8), encoding);
-- ppd->nickname = _cupsStrAlloc((char *)utf8);
-+ ppd->nickname = strdup((char *)utf8);
- }
- else
-- ppd->nickname = _cupsStrAlloc(string);
-+ ppd->nickname = strdup(string);
- }
- else if (!strcmp(keyword, "Product"))
- ppd->product = string;
-@@ -867,17 +864,17 @@ _ppdOpen(
- ppd->ttrasterizer = string;
- else if (!strcmp(keyword, "JCLBegin"))
- {
-- ppd->jcl_begin = _cupsStrAlloc(string);
-+ ppd->jcl_begin = strdup(string);
- ppd_decode(ppd->jcl_begin); /* Decode quoted string */
- }
- else if (!strcmp(keyword, "JCLEnd"))
- {
-- ppd->jcl_end = _cupsStrAlloc(string);
-+ ppd->jcl_end = strdup(string);
- ppd_decode(ppd->jcl_end); /* Decode quoted string */
- }
- else if (!strcmp(keyword, "JCLToPSInterpreter"))
- {
-- ppd->jcl_ps = _cupsStrAlloc(string);
-+ ppd->jcl_ps = strdup(string);
- ppd_decode(ppd->jcl_ps); /* Decode quoted string */
- }
- else if (!strcmp(keyword, "AccurateScreensSupport"))
-@@ -945,10 +942,10 @@ _ppdOpen(
- ppd->num_filters ++;
-
- /*
-- * Retain a copy of the filter string...
-+ * Make a copy of the filter string...
- */
-
-- *filter = _cupsStrRetain(string);
-+ *filter = strdup(string);
- }
- else if (!strcmp(keyword, "Throughput"))
- ppd->throughput = atoi(string);
-@@ -971,7 +968,7 @@ _ppdOpen(
- }
-
- ppd->fonts = tempfonts;
-- ppd->fonts[ppd->num_fonts] = _cupsStrAlloc(name);
-+ ppd->fonts[ppd->num_fonts] = strdup(name);
- ppd->num_fonts ++;
- }
- else if (!strncmp(keyword, "ParamCustom", 11))
-@@ -1136,7 +1133,7 @@ _ppdOpen(
- strlcpy(choice->text, text[0] ? text : _("Custom"),
- sizeof(choice->text));
-
-- choice->code = _cupsStrAlloc(string);
-+ choice->code = strdup(string);
-
- if (custom_option->section == PPD_ORDER_JCL)
- ppd_decode(choice->code);
-@@ -1338,7 +1335,7 @@ _ppdOpen(
-
- option->section = PPD_ORDER_ANY;
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
-
- /*
-@@ -1366,7 +1363,7 @@ _ppdOpen(
- strlcpy(choice->text,
- custom_attr->text[0] ? custom_attr->text : _("Custom"),
- sizeof(choice->text));
-- choice->code = _cupsStrRetain(custom_attr->value);
-+ choice->code = strdup(custom_attr->value);
- }
- }
- else if (!strcmp(keyword, "JCLOpenUI"))
-@@ -1445,7 +1442,7 @@ _ppdOpen(
- option->section = PPD_ORDER_JCL;
- group = NULL;
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
-
- /*
-@@ -1469,7 +1466,7 @@ _ppdOpen(
- strlcpy(choice->text,
- custom_attr->text[0] ? custom_attr->text : _("Custom"),
- sizeof(choice->text));
-- choice->code = _cupsStrRetain(custom_attr->value);
-+ choice->code = strdup(custom_attr->value);
- }
- }
- else if (!strcmp(keyword, "CloseUI"))
-@@ -1483,7 +1480,7 @@ _ppdOpen(
-
- option = NULL;
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
- }
- else if (!strcmp(keyword, "JCLCloseUI"))
-@@ -1497,7 +1494,7 @@ _ppdOpen(
-
- option = NULL;
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
- }
- else if (!strcmp(keyword, "OpenGroup"))
-@@ -1544,14 +1541,14 @@ _ppdOpen(
- if (group == NULL)
- goto error;
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
- }
- else if (!strcmp(keyword, "CloseGroup"))
- {
- group = NULL;
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
- }
- else if (!strcmp(keyword, "OrderDependency"))
-@@ -1609,7 +1606,7 @@ _ppdOpen(
- option->order = order;
- }
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
- }
- else if (!strncmp(keyword, "Default", 7))
-@@ -1852,7 +1849,7 @@ _ppdOpen(
- * Don't add this one as an attribute...
- */
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
- }
- else if (!strcmp(keyword, "PaperDimension"))
-@@ -1874,7 +1871,7 @@ _ppdOpen(
- size->width = (float)_cupsStrScand(string, &sptr, loc);
- size->length = (float)_cupsStrScand(sptr, NULL, loc);
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
- }
- else if (!strcmp(keyword, "ImageableArea"))
-@@ -1898,7 +1895,7 @@ _ppdOpen(
- size->right = (float)_cupsStrScand(sptr, &sptr, loc);
- size->top = (float)_cupsStrScand(sptr, NULL, loc);
-
-- _cupsStrFree(string);
-+ free(string);
- string = NULL;
- }
- else if (option != NULL &&
-@@ -1954,7 +1951,7 @@ _ppdOpen(
- (mask & (PPD_KEYWORD | PPD_STRING)) == (PPD_KEYWORD | PPD_STRING))
- ppd_add_attr(ppd, keyword, name, text, string);
- else
-- _cupsStrFree(string);
-+ free(string);
- }
-
- /*
-@@ -1977,7 +1974,7 @@ _ppdOpen(
- goto error;
- }
-
-- ppd_free(line.buffer);
-+ free(line.buffer);
-
- /*
- * Reset language preferences...
-@@ -2059,8 +2056,8 @@ _ppdOpen(
-
- error:
-
-- _cupsStrFree(string);
-- ppd_free(line.buffer);
-+ free(string);
-+ free(line.buffer);
-
- ppdClose(ppd);
-
-@@ -2498,9 +2495,9 @@ ppd_free_filters(ppd_file_t *ppd) /* I - PPD file */
- if (ppd->num_filters > 0)
- {
- for (i = ppd->num_filters, filter = ppd->filters; i > 0; i --, filter ++)
-- _cupsStrFree(*filter);
-+ free(*filter);
-
-- ppd_free(ppd->filters);
-+ free(ppd->filters);
-
- ppd->num_filters = 0;
- ppd->filters = NULL;
-@@ -2527,7 +2524,7 @@ ppd_free_group(ppd_group_t *group) /* I - Group to free */
- i --, option ++)
- ppd_free_option(option);
-
-- ppd_free(group->options);
-+ free(group->options);
- }
-
- if (group->num_subgroups > 0)
-@@ -2537,7 +2534,7 @@ ppd_free_group(ppd_group_t *group) /* I - Group to free */
- i --, subgroup ++)
- ppd_free_group(subgroup);
-
-- ppd_free(group->subgroups);
-+ free(group->subgroups);
- }
- }
-
-@@ -2559,10 +2556,10 @@ ppd_free_option(ppd_option_t *option) /* I - Option to free */
- i > 0;
- i --, choice ++)
- {
-- _cupsStrFree(choice->code);
-+ free(choice->code);
- }
-
-- ppd_free(option->choices);
-+ free(option->choices);
- }
- }
-
-@@ -3299,7 +3296,7 @@ ppd_read(cups_file_t *fp, /* I - File to read from */
- lineptr ++;
- }
-
-- *string = _cupsStrAlloc(lineptr);
-+ *string = strdup(lineptr);
-
- mask |= PPD_STRING;
- }
-@@ -3421,7 +3418,7 @@ ppd_update_filters(ppd_file_t *ppd, /* I - PPD file */
- filter += ppd->num_filters;
- ppd->num_filters ++;
-
-- *filter = _cupsStrAlloc(buffer);
-+ *filter = strdup(buffer);
- }
- while ((attr = ppdFindNextAttr(ppd, "cupsFilter2", NULL)) != NULL);
-
-diff --git a/cups/string.c b/cups/string.c
-index 0d4ed0f50..dd9c12ce8 100644
---- a/cups/string.c
-+++ b/cups/string.c
-@@ -1,8 +1,8 @@
- /*
- * String functions for CUPS.
- *
-- * Copyright 2007-2014 by Apple Inc.
-- * Copyright 1997-2007 by Easy Software Products.
-+ * Copyright © 2007-2019 by Apple Inc.
-+ * Copyright © 1997-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
-@@ -316,15 +316,6 @@ _cupsStrFree(const char *s) /* I - String to free */
-
- key = (_cups_sp_item_t *)(s - offsetof(_cups_sp_item_t, str));
-
--#ifdef DEBUG_GUARDS
-- if (key->guard != _CUPS_STR_GUARD)
-- {
-- DEBUG_printf(("5_cupsStrFree: Freeing string %p(%s), guard=%08x, "
-- "ref_count=%d", key, key->str, key->guard, key->ref_count));
-- abort();
-- }
--#endif /* DEBUG_GUARDS */
--
- if ((item = (_cups_sp_item_t *)cupsArrayFind(stringpool, key)) != NULL &&
- item == key)
- {
-@@ -332,6 +323,14 @@ _cupsStrFree(const char *s) /* I - String to free */
- * Found it, dereference...
- */
-
-+#ifdef DEBUG_GUARDS
-+ if (key->guard != _CUPS_STR_GUARD)
-+ {
-+ DEBUG_printf(("5_cupsStrFree: Freeing string %p(%s), guard=%08x, ref_count=%d", key, key->str, key->guard, key->ref_count));
-+ abort();
-+ }
-+#endif /* DEBUG_GUARDS */
-+
- item->ref_count --;
-
- if (!item->ref_count)
-diff --git a/scheduler/ipp.c b/scheduler/ipp.c
-index e00275b09..9be8a7f3b 100644
---- a/scheduler/ipp.c
-+++ b/scheduler/ipp.c
-@@ -2601,8 +2601,7 @@ add_printer(cupsd_client_t *con, /* I - Client connection */
- if (!strcmp(attr->values[i].string.text, "none"))
- continue;
-
-- printer->reasons[printer->num_reasons] =
-- _cupsStrRetain(attr->values[i].string.text);
-+ printer->reasons[printer->num_reasons] = _cupsStrAlloc(attr->values[i].string.text);
- printer->num_reasons ++;
-
- if (!strcmp(attr->values[i].string.text, "paused") &&
-@@ -4892,8 +4891,9 @@ copy_printer_attrs(
-
- if ((p2_uri = ippFindAttribute(p2->attrs, "printer-uri-supported",
- IPP_TAG_URI)) != NULL)
-- member_uris->values[i].string.text =
-- _cupsStrRetain(p2_uri->values[0].string.text);
-+ {
-+ member_uris->values[i].string.text = _cupsStrAlloc(p2_uri->values[0].string.text);
-+ }
- else
- {
- httpAssembleURIf(HTTP_URI_CODING_ALL, printer_uri,
diff --git a/debian/patches/0045-Fix-an-issue-with-PreserveJobHistory-and-time-values.patch b/debian/patches/0045-Fix-an-issue-with-PreserveJobHistory-and-time-values.patch
deleted file mode 100644
index e4a3f6a2b..000000000
--- a/debian/patches/0045-Fix-an-issue-with-PreserveJobHistory-and-time-values.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-From 917e6f4ff70eed933c80d21eed4c6bfeb2cb68b7 Mon Sep 17 00:00:00 2001
-From: Michael R Sweet <michael.r.sweet@gmail.com>
-Date: Mon, 11 Mar 2019 13:54:46 -0400
-Subject: Fix an issue with `PreserveJobHistory` and time values (Issue #5538)
-
-Closes: #921741
----
- scheduler/job.c | 36 ++++++++++++++++++------------------
- 1 file changed, 18 insertions(+), 18 deletions(-)
-
-diff --git a/scheduler/job.c b/scheduler/job.c
-index cc9283fb8..d4793cbb1 100644
---- a/scheduler/job.c
-+++ b/scheduler/job.c
-@@ -437,10 +437,20 @@ cupsdCleanJobs(void)
- curtime = time(NULL);
- JobHistoryUpdate = 0;
-
-+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdCleanJobs: curtime=%d", (int)curtime);
-+
- for (job = (cupsd_job_t *)cupsArrayFirst(Jobs);
- job;
- job = (cupsd_job_t *)cupsArrayNext(Jobs))
- {
-+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdCleanJobs: Job %d, state=%d, printer=%p, history_time=%d, file_time=%d", job->id, (int)job->state_value, (void *)job->printer, (int)job->history_time, (int)job->file_time);
-+
-+ if ((job->history_time && job->history_time) < JobHistoryUpdate || !JobHistoryUpdate)
-+ JobHistoryUpdate = job->history_time;
-+
-+ if ((job->file_time && job->file_time < JobHistoryUpdate) || !JobHistoryUpdate)
-+ JobHistoryUpdate = job->file_time;
-+
- if (job->state_value >= IPP_JOB_CANCELED && !job->printer)
- {
- /*
-@@ -456,21 +466,9 @@ cupsdCleanJobs(void)
- else if (job->file_time && job->file_time <= curtime)
- {
- cupsdLogJob(job, CUPSD_LOG_DEBUG, "Removing document files.");
-- cupsdLogJob(job, CUPSD_LOG_DEBUG2, "curtime=%ld, job->file_time=%ld", (long)curtime, (long)job->file_time);
- remove_job_files(job);
-
- cupsdMarkDirty(CUPSD_DIRTY_JOBS);
--
-- if (job->history_time < JobHistoryUpdate || !JobHistoryUpdate)
-- JobHistoryUpdate = job->history_time;
-- }
-- else
-- {
-- if (job->history_time < JobHistoryUpdate || !JobHistoryUpdate)
-- JobHistoryUpdate = job->history_time;
--
-- if (job->file_time < JobHistoryUpdate || !JobHistoryUpdate)
-- JobHistoryUpdate = job->file_time;
- }
- }
- }
-@@ -1729,7 +1727,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
- job->completed_time = attr->values[0].integer;
-
- if (JobHistory < INT_MAX)
-- job->history_time = attr->values[0].integer + JobHistory;
-+ job->history_time = job->completed_time + JobHistory;
- else
- job->history_time = INT_MAX;
-
-@@ -1740,7 +1738,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
- JobHistoryUpdate = job->history_time;
-
- if (JobFiles < INT_MAX)
-- job->file_time = attr->values[0].integer + JobFiles;
-+ job->file_time = job->completed_time + JobFiles;
- else
- job->file_time = INT_MAX;
-
-@@ -2862,8 +2860,10 @@ cupsdUpdateJobs(void)
- * Update history/file expiration times...
- */
-
-+ job->completed_time = attr->values[0].integer;
-+
- if (JobHistory < INT_MAX)
-- job->history_time = attr->values[0].integer + JobHistory;
-+ job->history_time = job->completed_time + JobHistory;
- else
- job->history_time = INT_MAX;
-
-@@ -2877,7 +2877,7 @@ cupsdUpdateJobs(void)
- JobHistoryUpdate = job->history_time;
-
- if (JobFiles < INT_MAX)
-- job->file_time = attr->values[0].integer + JobFiles;
-+ job->file_time = job->completed_time + JobFiles;
- else
- job->file_time = INT_MAX;
-
-@@ -4693,7 +4693,7 @@ set_time(cupsd_job_t *job, /* I - Job to update */
- job->completed_time = curtime;
-
- if (JobHistory < INT_MAX && attr)
-- job->history_time = attr->values[0].integer + JobHistory;
-+ job->history_time = job->completed_time + JobHistory;
- else
- job->history_time = INT_MAX;
-
-@@ -4701,7 +4701,7 @@ set_time(cupsd_job_t *job, /* I - Job to update */
- JobHistoryUpdate = job->history_time;
-
- if (JobFiles < INT_MAX && attr)
-- job->file_time = curtime + JobFiles;
-+ job->file_time = job->completed_time + JobFiles;
- else
- job->file_time = INT_MAX;
-
diff --git a/debian/patches/airprint-support.patch b/debian/patches/airprint-support.patch
index 415227c60..8441efd23 100644
--- a/debian/patches/airprint-support.patch
+++ b/debian/patches/airprint-support.patch
@@ -1,4 +1,4 @@
-From 93864a81b630172c7d8162394c0fc9d2a2cb7f78 Mon Sep 17 00:00:00 2001
+From cd67c9b31e932eaa8cbbb4755b75cea4ef1ff4eb Mon Sep 17 00:00:00 2001
From: Till Kamppeter <till.kamppeter@gmail.com>
Date: Tue, 9 Aug 2016 18:11:29 +0200
Subject: Patch to support Apple AirPrint (printing from iPhone, iPad, iPod
@@ -48,7 +48,7 @@ index fa5371486..84cb0fffe 100644
#
# Text files...
diff --git a/scheduler/conf.c b/scheduler/conf.c
-index 9c1be7089..52f2a6d35 100644
+index 11c94d2e4..2d02af752 100644
--- a/scheduler/conf.c
+++ b/scheduler/conf.c
@@ -745,7 +745,7 @@ cupsdReadConfiguration(void)
@@ -78,10 +78,10 @@ index 3dab90ca9..f21942af3 100644
{
keyvalue[count ][0] = "air";
diff --git a/scheduler/printers.c b/scheduler/printers.c
-index 865e3693b..968005059 100644
+index 6f04711f1..1135b133f 100644
--- a/scheduler/printers.c
+++ b/scheduler/printers.c
-@@ -3765,7 +3765,9 @@ add_printer_formats(cupsd_printer_t *p) /* I - Printer */
+@@ -3759,7 +3759,9 @@ add_printer_formats(cupsd_printer_t *p) /* I - Printer */
}
else if (!_cups_strcasecmp(type->super, "image"))
{
diff --git a/debian/patches/confdirperms.patch b/debian/patches/confdirperms.patch
index afb824ee6..43e6cccc5 100644
--- a/debian/patches/confdirperms.patch
+++ b/debian/patches/confdirperms.patch
@@ -1,4 +1,4 @@
-From 2a03d964274a972df70409b72302ef65ff43b043 Mon Sep 17 00:00:00 2001
+From 743868ed0a64d376638adb5b454a18baf8a541ed Mon Sep 17 00:00:00 2001
From: Martin Pitt <mpitt@debian.org>
Date: Tue, 9 Aug 2016 18:11:41 +0200
Subject: Do not mess with the permissions of cupsd.conf.
@@ -11,7 +11,7 @@ Patch-Name: confdirperms.patch
1 file changed, 2 insertions(+)
diff --git a/scheduler/conf.c b/scheduler/conf.c
-index 03fc8ecd5..86e37582b 100644
+index a159b6ff8..6892085a4 100644
--- a/scheduler/conf.c
+++ b/scheduler/conf.c
@@ -1134,10 +1134,12 @@ cupsdReadConfiguration(void)
diff --git a/debian/patches/cups-set-default-error-policy-retry-job.patch b/debian/patches/cups-set-default-error-policy-retry-job.patch
index f96173a29..5f4c82a59 100644
--- a/debian/patches/cups-set-default-error-policy-retry-job.patch
+++ b/debian/patches/cups-set-default-error-policy-retry-job.patch
@@ -1,4 +1,4 @@
-From de6d00cd1b3c7a447281e09f7496f25efe5f0957 Mon Sep 17 00:00:00 2001
+From 6edfb5edc10c8fb5b8ade6db14c0efc642092fdb Mon Sep 17 00:00:00 2001
From: Martin Pitt <martin.pitt@ubuntu.com>
Date: Tue, 9 Aug 2016 18:11:47 +0200
Subject: Set default job error policy to "retry-job", since it is less
@@ -18,7 +18,7 @@ Patch-Name: cups-set-default-error-policy-retry-job.patch
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/doc/help/man-cupsd.conf.html b/doc/help/man-cupsd.conf.html
-index 4ba6ecf8f..7f7126475 100644
+index 8850f3523..e5a2d3dd4 100644
--- a/doc/help/man-cupsd.conf.html
+++ b/doc/help/man-cupsd.conf.html
@@ -91,9 +91,9 @@ The default value is "30".
@@ -34,7 +34,7 @@ index 4ba6ecf8f..7f7126475 100644
<dd style="margin-left: 5.0em">Specifies the maximum cost of filters that are run concurrently, which can be used to minimize disk, memory, and CPU resource problems.
A limit of 0 disables filter limiting.
diff --git a/man/cupsd.conf.man.in b/man/cupsd.conf.man.in
-index 6cec33969..df2b5bbd5 100644
+index 2d6c5b89e..a870ff91d 100644
--- a/man/cupsd.conf.man.in
+++ b/man/cupsd.conf.man.in
@@ -136,10 +136,10 @@ Specifies that a failed print job should be aborted (discarded) unless otherwise
@@ -51,7 +51,7 @@ index 6cec33969..df2b5bbd5 100644
.TP 5
\fBFilterLimit \fIlimit\fR
diff --git a/scheduler/conf.c b/scheduler/conf.c
-index 755243170..aae7443de 100644
+index 743f64cab..1b70afc94 100644
--- a/scheduler/conf.c
+++ b/scheduler/conf.c
@@ -751,7 +751,7 @@ cupsdReadConfiguration(void)
diff --git a/debian/patches/cupsd-set-default-for-SyncOnClose-to-Yes.patch b/debian/patches/cupsd-set-default-for-SyncOnClose-to-Yes.patch
index e435688a4..78104c861 100644
--- a/debian/patches/cupsd-set-default-for-SyncOnClose-to-Yes.patch
+++ b/debian/patches/cupsd-set-default-for-SyncOnClose-to-Yes.patch
@@ -1,4 +1,4 @@
-From e7fd9b04ab5847dc694607543ed8bbd4655044dd Mon Sep 17 00:00:00 2001
+From 71646b0c6c2caf1bb758dc3e500e53f76d2e243c Mon Sep 17 00:00:00 2001
From: Tim Waugh <twaugh@redhat.com>
Date: Tue, 9 Aug 2016 18:11:46 +0200
Subject: Set the default for SyncOnClose to Yes
@@ -53,7 +53,7 @@ index f5e6a9f39..c3d8eeb2b 100644
.TP 5
\fBSystemGroup \fIgroup-name \fR[ ... \fIgroup-name\fR ]
diff --git a/scheduler/conf.c b/scheduler/conf.c
-index b12bda1f6..755243170 100644
+index 898b84f3e..743f64cab 100644
--- a/scheduler/conf.c
+++ b/scheduler/conf.c
@@ -735,7 +735,7 @@ cupsdReadConfiguration(void)
@@ -62,6 +62,6 @@ index b12bda1f6..755243170 100644
StrictConformance = FALSE;
- SyncOnClose = FALSE;
+ SyncOnClose = TRUE;
- Timeout = DEFAULT_TIMEOUT;
+ Timeout = 900;
WebInterface = CUPS_DEFAULT_WEBIF;
diff --git a/debian/patches/debianize_cups-config.patch b/debian/patches/debianize_cups-config.patch
index b17824746..f14890ed5 100644
--- a/debian/patches/debianize_cups-config.patch
+++ b/debian/patches/debianize_cups-config.patch
@@ -1,4 +1,4 @@
-From 46797627880e057a4e6e35575636b93b8450d54d Mon Sep 17 00:00:00 2001
+From 7a2def69b1ef279ea750c661b0f95a24b3f1574f Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:49 +0200
Subject: Use dpkg-architecture in cups-config to make it
diff --git a/debian/patches/default_log_settings.patch b/debian/patches/default_log_settings.patch
index dce4c16bd..e99596564 100644
--- a/debian/patches/default_log_settings.patch
+++ b/debian/patches/default_log_settings.patch
@@ -1,4 +1,4 @@
-From 309d0a1a54ca11e25b545e9ba5903d59bbdce1b1 Mon Sep 17 00:00:00 2001
+From 4051e3ad3ccfb42fde52f612696b9edb4521f8d9 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:40 +0200
Subject: Deactivate CUPS' own log rotating as the system already provides a
diff --git a/debian/patches/do-not-broadcast-with-hostnames.patch b/debian/patches/do-not-broadcast-with-hostnames.patch
index dd521216c..ef0e16d29 100644
--- a/debian/patches/do-not-broadcast-with-hostnames.patch
+++ b/debian/patches/do-not-broadcast-with-hostnames.patch
@@ -1,4 +1,4 @@
-From 1779852a06df8333c948b745c3aa3f1f231be64f Mon Sep 17 00:00:00 2001
+From d3ec4d94e1f8c178c4a7d228da2dde11041f33ef Mon Sep 17 00:00:00 2001
From: Till Kampetter <till.kampetter@gmail.com>
Date: Tue, 9 Aug 2016 18:11:35 +0200
Subject: Do not use host names for broadcasting print queues and
@@ -13,7 +13,7 @@ Patch-Name: do-not-broadcast-with-hostnames.patch
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scheduler/conf.c b/scheduler/conf.c
-index 52f2a6d35..03fc8ecd5 100644
+index 2d02af752..a159b6ff8 100644
--- a/scheduler/conf.c
+++ b/scheduler/conf.c
@@ -898,7 +898,7 @@ cupsdReadConfiguration(void)
diff --git a/debian/patches/drop_unnecessary_dependencies.patch b/debian/patches/drop_unnecessary_dependencies.patch
index bd18f89c3..a11d03796 100644
--- a/debian/patches/drop_unnecessary_dependencies.patch
+++ b/debian/patches/drop_unnecessary_dependencies.patch
@@ -1,4 +1,4 @@
-From f5a40c519699d77a7265fbe7993df890ab4c00c0 Mon Sep 17 00:00:00 2001
+From c9157cfdf76f24d00775745d9651716112972937 Mon Sep 17 00:00:00 2001
From: Martin Pitt <mpitt@debian.org>
Date: Tue, 9 Aug 2016 18:11:25 +0200
Subject: Do not link libcups.so and libcupsimage.so unnecessarily
@@ -16,7 +16,7 @@ Patch-Name: drop_unnecessary_dependencies.patch
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/Makedefs.in b/Makedefs.in
-index f614c0c1d..431d14019 100644
+index 8541b4976..dd86cde4b 100644
--- a/Makedefs.in
+++ b/Makedefs.in
@@ -156,7 +156,7 @@ DBUS_NOTIFIER = @DBUS_NOTIFIER@
diff --git a/debian/patches/fixes-for-jobs-with-multiple-files-and-multiple-formats.patch b/debian/patches/fixes-for-jobs-with-multiple-files-and-multiple-formats.patch
index 9e6a8d07d..db22baf1b 100644
--- a/debian/patches/fixes-for-jobs-with-multiple-files-and-multiple-formats.patch
+++ b/debian/patches/fixes-for-jobs-with-multiple-files-and-multiple-formats.patch
@@ -1,4 +1,4 @@
-From 958625d59f2ff723fbf4a535cee7e6ea251b8732 Mon Sep 17 00:00:00 2001
+From d07ce26c5b3a2a79a8e97821a1a88f2ad54b30ee Mon Sep 17 00:00:00 2001
From: Tim Waugh <twaugh@redhat.com>
Date: Tue, 9 Aug 2016 18:11:07 +0200
Subject: Fix jobs with multiple files or multiple formats
@@ -12,7 +12,7 @@ Patch-Name: fixes-for-jobs-with-multiple-files-and-multiple-formats.patch
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/backend/ipp.c b/backend/ipp.c
-index f14a44e66..bc678f50a 100644
+index c364e1978..e072249bd 100644
--- a/backend/ipp.c
+++ b/backend/ipp.c
@@ -1788,7 +1788,10 @@ main(int argc, /* I - Number of command-line args */
diff --git a/debian/patches/log-debug-history-nearly-unlimited.patch b/debian/patches/log-debug-history-nearly-unlimited.patch
index a973aaae8..eabfc4b80 100644
--- a/debian/patches/log-debug-history-nearly-unlimited.patch
+++ b/debian/patches/log-debug-history-nearly-unlimited.patch
@@ -1,4 +1,4 @@
-From 833d317f0520b037c79ad4b1ceeca31529797641 Mon Sep 17 00:00:00 2001
+From 8d4d092df601951637c199a190666b1c11d7be43 Mon Sep 17 00:00:00 2001
From: Till Kampetter <till.kampetter@gmail.com>
Date: Tue, 9 Aug 2016 18:11:45 +0200
Subject: Make log debug history nearly unlimited
@@ -11,7 +11,7 @@ Patch-Name: log-debug-history-nearly-unlimited.patch
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/scheduler/conf.c b/scheduler/conf.c
-index 86e37582b..b12bda1f6 100644
+index 6892085a4..898b84f3e 100644
--- a/scheduler/conf.c
+++ b/scheduler/conf.c
@@ -721,7 +721,7 @@ cupsdReadConfiguration(void)
diff --git a/debian/patches/logfiles_adm_readable.patch b/debian/patches/logfiles_adm_readable.patch
index 27370c326..af03afba7 100644
--- a/debian/patches/logfiles_adm_readable.patch
+++ b/debian/patches/logfiles_adm_readable.patch
@@ -1,4 +1,4 @@
-From 868577abc6613d776682af81906a38cc2f68d5fb Mon Sep 17 00:00:00 2001
+From 48fcd4a99f5e75be488426a7aa01d2e393bd5520 Mon Sep 17 00:00:00 2001
From: Martin Pitt <mpitt@debian.org>
Date: Tue, 9 Aug 2016 18:11:38 +0200
Subject: Make log files readable to group "adm", if present.
diff --git a/debian/patches/man-cups-lpd-drop-dangling-references.patch b/debian/patches/man-cups-lpd-drop-dangling-references.patch
index 3e11dd901..761339339 100644
--- a/debian/patches/man-cups-lpd-drop-dangling-references.patch
+++ b/debian/patches/man-cups-lpd-drop-dangling-references.patch
@@ -1,4 +1,4 @@
-From 361a21356d8f1bbb0794cad4509bfed141f1a721 Mon Sep 17 00:00:00 2001
+From 2e3633bed229ae17798c9456625591012469ef5d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bastien=20ROUCARI=C3=88S?= <bastien.roucaries@u-cergy.fr>
Date: Tue, 9 Aug 2016 18:11:48 +0200
Subject: Drop dangling references from cups-lpd.man
diff --git a/debian/patches/manpage-hyphen-minus.patch b/debian/patches/manpage-hyphen-minus.patch
index 645cf7a6a..2c7134cee 100644
--- a/debian/patches/manpage-hyphen-minus.patch
+++ b/debian/patches/manpage-hyphen-minus.patch
@@ -1,4 +1,4 @@
-From 4d804d883eed3c12719fd830bb24a8e9bc638105 Mon Sep 17 00:00:00 2001
+From ca4c0f32fb4b03e8f1be9feb64abdfe367aac7a3 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:05 +0200
Subject: Fix hyphen-used-as-minus-sign manpage errors
@@ -254,7 +254,7 @@ index 8672afa09..04ba12d35 100644
.BR cupsd (8),
.BR cupsd.conf (5),
diff --git a/man/cupsd.conf.man.in b/man/cupsd.conf.man.in
-index 15a5fa9e6..6cec33969 100644
+index 97bf87917..2d6c5b89e 100644
--- a/man/cupsd.conf.man.in
+++ b/man/cupsd.conf.man.in
@@ -443,7 +443,7 @@ The \fIAllowDH\fR option enables cipher suites using plain Diffie-Hellman key ne
@@ -324,7 +324,7 @@ index 253e05799..ce26c50ca 100644
Expressions may also contain modifiers:
.TP 5
diff --git a/man/ipptoolfile.man b/man/ipptoolfile.man
-index 35b050419..c10254f64 100644
+index 5e8384b69..b7c594a0f 100644
--- a/man/ipptoolfile.man
+++ b/man/ipptoolfile.man
@@ -169,8 +169,8 @@ The following directives are understood within a \fItest\fR:
diff --git a/debian/patches/manpage-translations.patch b/debian/patches/manpage-translations.patch
index 480d1add0..1e326e7e0 100644
--- a/debian/patches/manpage-translations.patch
+++ b/debian/patches/manpage-translations.patch
@@ -1,4 +1,4 @@
-From 9615ef5f2b8374bfe2816f8ff4314234362ce841 Mon Sep 17 00:00:00 2001
+From 1cd07131ecfb487064814a2c315e89b38066d73c Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:50 +0200
Subject: po4a infrastructure and translations for manpages.
diff --git a/debian/patches/move-cupsd-conf-default-to-share.patch b/debian/patches/move-cupsd-conf-default-to-share.patch
index c181061f2..e437d81c4 100644
--- a/debian/patches/move-cupsd-conf-default-to-share.patch
+++ b/debian/patches/move-cupsd-conf-default-to-share.patch
@@ -1,4 +1,4 @@
-From 636736bf6b694603432da1f72f07754d29e1673d Mon Sep 17 00:00:00 2001
+From df76c461bbe020dade1881bcdaa3732182303092 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:24 +0200
Subject: Move cupsd.conf.default from SERVERROOT to DATADIR
@@ -15,7 +15,7 @@ Patch-Name: move-cupsd-conf-default-to-share.patch
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c
-index ce9297765..00830e486 100644
+index 43fad787e..f0d01598d 100644
--- a/cgi-bin/admin.c
+++ b/cgi-bin/admin.c
@@ -1922,6 +1922,7 @@ do_config_server(http_t *http) /* I - HTTP connection */
diff --git a/debian/patches/no-conffile-timestamp.patch b/debian/patches/no-conffile-timestamp.patch
index 3915049d7..9ee7f150a 100644
--- a/debian/patches/no-conffile-timestamp.patch
+++ b/debian/patches/no-conffile-timestamp.patch
@@ -1,4 +1,4 @@
-From 1d450c07d37d9a44ebc8ee270e0dd322bfbeb7f0 Mon Sep 17 00:00:00 2001
+From cafaeeefc9d27d50954752525cd534069354df78 Mon Sep 17 00:00:00 2001
From: Joey Hess <joeyh@debian.org>
Date: Tue, 9 Aug 2016 18:11:31 +0200
Subject: Disable time stamps in conffiles, to avoid ever-changing files in
@@ -29,7 +29,7 @@ index 57f9a8f44..74036fd46 100644
/*
diff --git a/scheduler/job.c b/scheduler/job.c
-index bbef60c64..cc9283fb8 100644
+index dcee43d83..79142bc61 100644
--- a/scheduler/job.c
+++ b/scheduler/job.c
@@ -2205,7 +2205,7 @@ cupsdSaveAllJobs(void)
@@ -42,10 +42,10 @@ index bbef60c64..cc9283fb8 100644
/*
diff --git a/scheduler/printers.c b/scheduler/printers.c
-index 968005059..fda5316ee 100644
+index 1135b133f..309c1cbe1 100644
--- a/scheduler/printers.c
+++ b/scheduler/printers.c
-@@ -1458,7 +1458,7 @@ cupsdSaveAllPrinters(void)
+@@ -1452,7 +1452,7 @@ cupsdSaveAllPrinters(void)
strftime(temp, sizeof(temp) - 1, "%Y-%m-%d %H:%M", curdate);
cupsFilePuts(fp, "# Printer configuration file for " CUPS_SVERSION "\n");
@@ -55,10 +55,10 @@ index 968005059..fda5316ee 100644
/*
diff --git a/scheduler/subscriptions.c b/scheduler/subscriptions.c
-index b2abf14ee..bf36ced4e 100644
+index cac340520..c0e03b8cb 100644
--- a/scheduler/subscriptions.c
+++ b/scheduler/subscriptions.c
-@@ -1085,7 +1085,7 @@ cupsdSaveAllSubscriptions(void)
+@@ -1088,7 +1088,7 @@ cupsdSaveAllSubscriptions(void)
strftime(temp, sizeof(temp) - 1, "%Y-%m-%d %H:%M", curdate);
cupsFilePuts(fp, "# Subscription configuration file for " CUPS_SVERSION "\n");
diff --git a/debian/patches/pwg-raster-attributes.patch b/debian/patches/pwg-raster-attributes.patch
index 9fa2373d3..3ecf47a46 100644
--- a/debian/patches/pwg-raster-attributes.patch
+++ b/debian/patches/pwg-raster-attributes.patch
@@ -1,4 +1,4 @@
-From b19b9601ea12d001c2ae7f2ef3bdfe43eaca2a9f Mon Sep 17 00:00:00 2001
+From bfed0c1e33e103ccfe934be6eb525ba6aff73b85 Mon Sep 17 00:00:00 2001
From: Till Kamppeter <till.kamppeter@gmail.com>
Date: Tue, 9 Aug 2016 18:11:04 +0200
Subject: For PWG Raster, add required IPP attributes
@@ -14,10 +14,10 @@ Patch-Name: pwg-raster-attributes.patch
1 file changed, 76 insertions(+), 1 deletion(-)
diff --git a/scheduler/printers.c b/scheduler/printers.c
-index 68239d85d..865e3693b 100644
+index 937d0f3c9..6f04711f1 100644
--- a/scheduler/printers.c
+++ b/scheduler/printers.c
-@@ -2199,9 +2199,10 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
+@@ -2193,9 +2193,10 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
cupsd_location_t *auth; /* Pointer to authentication element */
const char *auth_supported; /* Authentication supported */
ipp_t *oldattrs; /* Old printer attributes */
@@ -29,7 +29,7 @@ index 68239d85d..865e3693b 100644
DEBUG_printf(("cupsdSetPrinterAttrs: entering name = %s, type = %x\n", p->name,
-@@ -2538,6 +2539,80 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
+@@ -2532,6 +2533,80 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)/* I - Printer to setup */
DEBUG_printf(("cupsdSetPrinterAttrs: leaving name = %s, type = %x\n", p->name,
p->type));
diff --git a/debian/patches/reactivate_recommended_driver.patch b/debian/patches/reactivate_recommended_driver.patch
index 6df2d7f0c..aa2c93429 100644
--- a/debian/patches/reactivate_recommended_driver.patch
+++ b/debian/patches/reactivate_recommended_driver.patch
@@ -1,4 +1,4 @@
-From 04481c8139358649196c570bff2fb32132d408a2 Mon Sep 17 00:00:00 2001
+From d4f20a4097f2dda79d35df9a87935d8d74021f50 Mon Sep 17 00:00:00 2001
From: Till Kampetter <till.kampetter@gmail.com>
Date: Tue, 9 Aug 2016 18:11:36 +0200
Subject: CUPS removes the "(recommended)" comments of the NickNames of
@@ -13,10 +13,10 @@ Patch-Name: reactivate_recommended_driver.patch
1 file changed, 10 deletions(-)
diff --git a/scheduler/cups-driverd.cxx b/scheduler/cups-driverd.cxx
-index e6684a139..1d4291a73 100644
+index 81c447ad8..d48c75165 100644
--- a/scheduler/cups-driverd.cxx
+++ b/scheduler/cups-driverd.cxx
-@@ -246,7 +246,6 @@ add_ppd(const char *filename, /* I - PPD filename */
+@@ -243,7 +243,6 @@ add_ppd(const char *filename, /* I - PPD filename */
const char *scheme) /* I - PPD scheme */
{
ppd_info_t *ppd; /* PPD */
@@ -24,7 +24,7 @@ index e6684a139..1d4291a73 100644
/*
-@@ -284,15 +283,6 @@ add_ppd(const char *filename, /* I - PPD filename */
+@@ -281,15 +280,6 @@ add_ppd(const char *filename, /* I - PPD filename */
strlcpy(ppd->record.device_id, device_id, sizeof(ppd->record.device_id));
strlcpy(ppd->record.scheme, scheme, sizeof(ppd->record.scheme));
diff --git a/debian/patches/removecvstag.patch b/debian/patches/removecvstag.patch
index ed8183f12..d7dfeae9f 100644
--- a/debian/patches/removecvstag.patch
+++ b/debian/patches/removecvstag.patch
@@ -1,4 +1,4 @@
-From 13c7f079928135d2fe90728ddb073d8571bb0150 Mon Sep 17 00:00:00 2001
+From 84da8ceb42cfed4b7cfe3ee6704d67593e7b0941 Mon Sep 17 00:00:00 2001
From: Kenshi Muto <kmuto@debian.org>
Date: Tue, 9 Aug 2016 18:11:33 +0200
Subject: Do not write VCS tags into installed conffiles
diff --git a/debian/patches/rename-systemd-units.patch b/debian/patches/rename-systemd-units.patch
index 4e318e424..e32949304 100644
--- a/debian/patches/rename-systemd-units.patch
+++ b/debian/patches/rename-systemd-units.patch
@@ -1,4 +1,4 @@
-From 27e3f4429e71af41c18eabcd5e1436e8f40deec1 Mon Sep 17 00:00:00 2001
+From 5deeb9908be6bec764654b35ac23d379bfb5d024 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:34 +0200
Subject: Rename the systemd service file from org.cups.cups.* to cups.*
@@ -36,10 +36,10 @@ index 0f1cc46f2..7c8509fa6 100644
[Path]
PathExists=@CUPS_CACHEDIR@/org.cups.cupsd
diff --git a/scheduler/org.cups.cupsd.service.in b/scheduler/org.cups.cupsd.service.in
-index f2afa1124..3c273612a 100644
+index 5273762fb..cd2334396 100644
--- a/scheduler/org.cups.cupsd.service.in
+++ b/scheduler/org.cups.cupsd.service.in
-@@ -8,5 +8,5 @@ Type=simple
+@@ -9,5 +9,5 @@ Type=simple
Restart=on-failure
[Install]
diff --git a/debian/patches/series b/debian/patches/series
index a25495ef7..ad63fbf33 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -32,15 +32,4 @@ cups-set-default-error-policy-retry-job.patch
man-cups-lpd-drop-dangling-references.patch
debianize_cups-config.patch
0034-Build-mantohtml-with-the-build-architecture-compiler.patch
-0035-The-lp-and-lpr-commands-now-provide-better-error-mes.patch
-0036-Protect-against-continuing-to-read-from-a-file-at-EO.patch
-0037-Use-the-same-requested-attributes-values-for-all-IPP.patch
-0038-Add-a-USB-quirk-rule-for-the-Lexmark-E120n-Issue-547.patch
-0039-Updated-the-USB-quirks-rule-for-Zebra-label-printers.patch
-0040-Add-USB-quirks-rule-for-Xerox-printers-Issue-5523.patch
-0041-Add-a-USB-quirks-rule-for-the-DYMO-450-Turbo-Issue-5.patch
-0042-Fix-compile-error-on-Linux-Issue-5483.patch
-0043-Stop-parsing-the-Emulators-keywords-in-PPD-files-Iss.patch
-0044-Fix-potential-unaligned-accesses-in-the-string-pool-.patch
-0045-Fix-an-issue-with-PreserveJobHistory-and-time-values.patch
manpage-translations.patch
diff --git a/debian/patches/show-compile-command-lines.patch b/debian/patches/show-compile-command-lines.patch
index acfe678ea..2191590d8 100644
--- a/debian/patches/show-compile-command-lines.patch
+++ b/debian/patches/show-compile-command-lines.patch
@@ -1,4 +1,4 @@
-From 84cdb2bf1b52f1d2c874cb11e043d145b97f6dc8 Mon Sep 17 00:00:00 2001
+From 0baeb1d78fa49fa2656706f7951e59f520e8e98c Mon Sep 17 00:00:00 2001
From: Till Kampetter <till.kampetter@gmail.com>
Date: Tue, 9 Aug 2016 18:11:43 +0200
Subject: Show compile command lines
@@ -9,7 +9,7 @@ Patch-Name: show-compile-command-lines.patch
1 file changed, 1 deletion(-)
diff --git a/Makedefs.in b/Makedefs.in
-index 431d14019..656d7b44c 100644
+index dd86cde4b..83eae7ce8 100644
--- a/Makedefs.in
+++ b/Makedefs.in
@@ -261,7 +261,6 @@ USBQUIRKS = @USBQUIRKS@
diff --git a/debian/patches/test-i18n-nonlinux.patch b/debian/patches/test-i18n-nonlinux.patch
index 69534b597..93368ff92 100644
--- a/debian/patches/test-i18n-nonlinux.patch
+++ b/debian/patches/test-i18n-nonlinux.patch
@@ -1,4 +1,4 @@
-From e80cf44f0e8306861e4a6cd501d9176ba6321ba8 Mon Sep 17 00:00:00 2001
+From 8db74bb2d98ae2cf7838bbcc080f22b59016a1c5 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:16 +0200
Subject: Tests: Do not run the CUPS_EUC_JP test case on BSD/Hurd either, as
diff --git a/debian/patches/tests-fix-ppdLocalize-on-unclean-env.patch b/debian/patches/tests-fix-ppdLocalize-on-unclean-env.patch
index 94a79c659..35caeb259 100644
--- a/debian/patches/tests-fix-ppdLocalize-on-unclean-env.patch
+++ b/debian/patches/tests-fix-ppdLocalize-on-unclean-env.patch
@@ -1,4 +1,4 @@
-From ad183a459c66cc1bec8727a685235d9ae277ea46 Mon Sep 17 00:00:00 2001
+From 995b47b758bb86a184d923c3960bb8867254557a Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:18 +0200
Subject: Tests: Force LC_* environment variables when testing (non)
@@ -13,7 +13,7 @@ Patch-Name: tests-fix-ppdLocalize-on-unclean-env.patch
1 file changed, 8 insertions(+)
diff --git a/cups/testppd.c b/cups/testppd.c
-index a127a7947..e6cdea5ed 100644
+index 776304b24..943e70033 100644
--- a/cups/testppd.c
+++ b/cups/testppd.c
@@ -503,6 +503,14 @@ main(int argc, /* I - Number of command-line arguments */
diff --git a/debian/patches/tests-ignore-ipv6-address-family-not-supported.patch b/debian/patches/tests-ignore-ipv6-address-family-not-supported.patch
index 5acd26cb7..6531b364e 100644
--- a/debian/patches/tests-ignore-ipv6-address-family-not-supported.patch
+++ b/debian/patches/tests-ignore-ipv6-address-family-not-supported.patch
@@ -1,4 +1,4 @@
-From 216ab53fd4e0efbd4c9bff23e0db41aa0e89ff2f Mon Sep 17 00:00:00 2001
+From 97665110b28de873d64ce94779be5811907104ce Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:33:56 +0200
Subject: Tests: ignore errors triggered on ipv6-deprived hosts
@@ -13,10 +13,10 @@ Patch-Name: tests-ignore-ipv6-address-family-not-supported.patch
1 file changed, 1 insertion(+)
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
-index fd4cf20d6..99239caea 100755
+index 41da930f0..8c6b2d617 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
-@@ -972,6 +972,7 @@ count=`$GREP '^E ' $BASE/log/error_log | $GREP -v 'Unknown default SystemGroup'
+@@ -1038,6 +1038,7 @@ count=`$GREP '^E ' $BASE/log/error_log | $GREP -v 'Unknown default SystemGroup'
$GREP -v '(dnssd) stopped with status 1' | \
$GREP -v 'loadFile failed: temp file: not a PDF file' | \
$GREP -v 'Failed to connect to system bus' | \
diff --git a/debian/patches/tests-ignore-kfreebsd-amd64-not-a-pdf.patch b/debian/patches/tests-ignore-kfreebsd-amd64-not-a-pdf.patch
index b1d6359b0..3830b2e59 100644
--- a/debian/patches/tests-ignore-kfreebsd-amd64-not-a-pdf.patch
+++ b/debian/patches/tests-ignore-kfreebsd-amd64-not-a-pdf.patch
@@ -1,4 +1,4 @@
-From 0c0de72ae34c09b6ec938d4a78be9bf190d16e7d Mon Sep 17 00:00:00 2001
+From 45897f280686076a46b2540cde47e80876354292 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:30:48 +0200
Subject: Tests: ignore loadFile failures
@@ -13,10 +13,10 @@ Patch-Name: tests-ignore-kfreebsd-amd64-not-a-pdf.patch
1 file changed, 2 insertions(+)
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
-index 8219f1e26..fd4cf20d6 100755
+index c842cf530..41da930f0 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
-@@ -970,6 +970,8 @@ fi
+@@ -1036,6 +1036,8 @@ fi
count=`$GREP '^E ' $BASE/log/error_log | $GREP -v 'Unknown default SystemGroup' | \
$GREP -v '(usb) crashed on signal 11' | \
$GREP -v '(dnssd) stopped with status 1' | \
diff --git a/debian/patches/tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch b/debian/patches/tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch
index 23c7c2a2a..039733afa 100644
--- a/debian/patches/tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch
+++ b/debian/patches/tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch
@@ -1,4 +1,4 @@
-From 31de6465febf604c20afde267596e98e733ba990 Mon Sep 17 00:00:00 2001
+From e570284abae7d406a2c33b488a4fd0b20dfd93d0 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:36:02 +0200
Subject: Tests: ignore the failure to write uncompressed data
@@ -14,10 +14,10 @@ Patch-Name: tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch
1 file changed, 1 insertion(+)
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
-index 99239caea..97dc3866f 100755
+index 8c6b2d617..b79149f23 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
-@@ -973,6 +973,7 @@ count=`$GREP '^E ' $BASE/log/error_log | $GREP -v 'Unknown default SystemGroup'
+@@ -1039,6 +1039,7 @@ count=`$GREP '^E ' $BASE/log/error_log | $GREP -v 'Unknown default SystemGroup'
$GREP -v 'loadFile failed: temp file: not a PDF file' | \
$GREP -v 'Failed to connect to system bus' | \
$GREP -v -E 'Unable to open listen socket for address .* Address family not supported by protocol.' | \
diff --git a/debian/patches/tests-ignore-usb-crash.patch b/debian/patches/tests-ignore-usb-crash.patch
index 8faf1757f..3d1cb547d 100644
--- a/debian/patches/tests-ignore-usb-crash.patch
+++ b/debian/patches/tests-ignore-usb-crash.patch
@@ -1,4 +1,4 @@
-From a377691ca08b10ec3976300d5ad02b05f19307cf Mon Sep 17 00:00:00 2001
+From 31f3c8e45c30721385539cf035660a0b6969b82f Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:10 +0200
Subject: Tests: ignore usb & dnssd backend unexpected exits
@@ -17,10 +17,10 @@ Patch-Name: tests-ignore-usb-crash.patch
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
-index c7de337ae..8219f1e26 100755
+index ce1f386c0..c842cf530 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
-@@ -967,7 +967,10 @@ else
+@@ -1033,7 +1033,10 @@ else
fi
# Error log messages
diff --git a/debian/patches/tests-ignore-warnings.patch b/debian/patches/tests-ignore-warnings.patch
index fcfb94276..946197c76 100644
--- a/debian/patches/tests-ignore-warnings.patch
+++ b/debian/patches/tests-ignore-warnings.patch
@@ -1,4 +1,4 @@
-From 44d082e3a3d2f673801d8e78d66ce08a2cb2236d Mon Sep 17 00:00:00 2001
+From e2af6d00fedf677671093538f24fcca5b75e34bd Mon Sep 17 00:00:00 2001
From: Martin Pitt <mpitt@debian.org>
Date: Tue, 9 Aug 2016 18:11:09 +0200
Subject: Tests: Ignore warnings from colord and Avahi
@@ -13,10 +13,10 @@ Patch-Name: tests-ignore-warnings.patch
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
-index fc7e2525c..c7de337ae 100755
+index 9cf7bd08a..ce1f386c0 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
-@@ -982,7 +982,11 @@ else
+@@ -1048,7 +1048,11 @@ else
fi
# Warning log messages
diff --git a/debian/patches/tests-make-lpstat-call-reproducible.patch b/debian/patches/tests-make-lpstat-call-reproducible.patch
index 4da028da5..389964326 100644
--- a/debian/patches/tests-make-lpstat-call-reproducible.patch
+++ b/debian/patches/tests-make-lpstat-call-reproducible.patch
@@ -1,4 +1,4 @@
-From d0b8a43d94dc57cb5363e48c3bcb18449d3b9505 Mon Sep 17 00:00:00 2001
+From 56a04f5d453be250b79670a09c1f85d96c8d4ad6 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:22 +0200
Subject: Force LC_ALL=C environment variable when grepping the output of
@@ -13,10 +13,10 @@ Patch-Name: tests-make-lpstat-call-reproducible.patch
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
-index bcdfd5efe..1c7cc27e7 100755
+index 974da77a5..10ad26495 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
-@@ -695,7 +695,7 @@ else
+@@ -703,7 +703,7 @@ else
fi
while true; do
@@ -25,7 +25,7 @@ index bcdfd5efe..1c7cc27e7 100755
if test "x$running" = "xscheduler is running"; then
break
fi
-@@ -809,13 +809,13 @@ kill -HUP $cupsd
+@@ -817,13 +817,13 @@ kill -HUP $cupsd
while true; do
sleep 10
diff --git a/debian/patches/tests-no-pdftourf.patch b/debian/patches/tests-no-pdftourf.patch
index 8d6bc089b..5e59b1198 100644
--- a/debian/patches/tests-no-pdftourf.patch
+++ b/debian/patches/tests-no-pdftourf.patch
@@ -1,4 +1,4 @@
-From 6a354c3169ea6469bb71e51fc6d7d23e62f7fcaa Mon Sep 17 00:00:00 2001
+From 8d7b0fef89aaf7e175ca5e2fb03851edbce2bb09 Mon Sep 17 00:00:00 2001
From: Michael Sweet <michael.r.sweet@gmail.com>
Date: Tue, 9 Aug 2016 18:11:23 +0200
Subject: Revert pdftourf filter addition in tests
@@ -18,7 +18,7 @@ Patch-Name: tests-no-pdftourf.patch
delete mode 100644 test/test.types
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
-index 1c7cc27e7..7fd69652c 100755
+index 10ad26495..f7cf61c36 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
@@ -271,7 +271,7 @@ case "$usedebugprintfs" in
diff --git a/debian/patches/tests-use-ipv4-lo-address.patch b/debian/patches/tests-use-ipv4-lo-address.patch
index 4642a7213..481cce3f5 100644
--- a/debian/patches/tests-use-ipv4-lo-address.patch
+++ b/debian/patches/tests-use-ipv4-lo-address.patch
@@ -1,4 +1,4 @@
-From 1697ce7557145b73c55f1c82aec6b70f45228432 Mon Sep 17 00:00:00 2001
+From cbea213e73eb736d8bfa66fc8bea7522ee1ba526 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:21 +0200
Subject: Use 127.0.0.1 instead of localhost in the test-suite. This should
@@ -30,10 +30,10 @@ index 7efc39892..08b8c508f 100644
echo " FAILED"
exit 1
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
-index 411689141..bcdfd5efe 100755
+index d64bd89fc..974da77a5 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
-@@ -485,7 +485,7 @@ fi
+@@ -493,7 +493,7 @@ fi
cat >$BASE/cupsd.conf <<EOF
StrictConformance Yes
Browsing Off
@@ -42,7 +42,7 @@ index 411689141..bcdfd5efe 100755
Listen $BASE/sock
MaxSubscriptions 3
MaxLogSize 0
-@@ -599,7 +599,7 @@ fi
+@@ -607,7 +607,7 @@ fi
# These get exported because they don't have side-effects...
CUPS_DISABLE_APPLE_DEFAULT=yes; export CUPS_DISABLE_APPLE_DEFAULT
@@ -51,7 +51,7 @@ index 411689141..bcdfd5efe 100755
CUPS_SERVERROOT=$BASE; export CUPS_SERVERROOT
CUPS_STATEDIR=$BASE; export CUPS_STATEDIR
CUPS_DATADIR=$BASE/share; export CUPS_DATADIR
-@@ -735,10 +735,10 @@ for file in 4*.test ipp-2.1.test; do
+@@ -743,10 +743,10 @@ for file in 4*.test ipp-2.1.test; do
echo $ac_n "`date '+[%d/%b/%Y:%H:%M:%S %z]'` $ac_c" >>$strfile
if test $file = ipp-2.1.test; then
diff --git a/debian/patches/tests-wait-on-unfinished-jobs-everytime.patch b/debian/patches/tests-wait-on-unfinished-jobs-everytime.patch
index deee87c69..b010e02ea 100644
--- a/debian/patches/tests-wait-on-unfinished-jobs-everytime.patch
+++ b/debian/patches/tests-wait-on-unfinished-jobs-everytime.patch
@@ -1,4 +1,4 @@
-From faa9cfa7c22a95abb45d5ed38d894b518e934a2c Mon Sep 17 00:00:00 2001
+From 1b90626cfba63b97d53e17b2e9980ac17ea75e1c Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Tue, 9 Aug 2016 18:11:17 +0200
Subject: Tests: Make sure that all scheduled jobs are finished before
@@ -14,10 +14,10 @@ Patch-Name: tests-wait-on-unfinished-jobs-everytime.patch
1 file changed, 5 insertions(+)
diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh
-index 97dc3866f..411689141 100755
+index b79149f23..d64bd89fc 100755
--- a/test/run-stp-tests.sh
+++ b/test/run-stp-tests.sh
-@@ -768,6 +768,11 @@ echo " $date by $user on `hostname`." >>$strfile
+@@ -776,6 +776,11 @@ echo " $date by $user on `hostname`." >>$strfile
echo " <pre>" >>$strfile
for file in 5*.sh; do