summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey D2019-04-17 09:04:10 +0300
committerAlexey D2019-04-17 09:06:28 +0300
commit1a5a6552478f98e5a1f0118b0010d197014b6ee2 (patch)
tree76ec973ec277346d511a53b324882ca36b570f86
parent36b10094933e145d81a0802870b81cea5461ecf7 (diff)
downloadaur-1a5a6552478f98e5a1f0118b0010d197014b6ee2.tar.gz
version 2.2.11-2
-rw-r--r--.SRCINFO6
-rw-r--r--PKGBUILD9
-rw-r--r--samsung-printer-workaround.patch30
3 files changed, 41 insertions, 4 deletions
diff --git a/.SRCINFO b/.SRCINFO
index ecaa8e39a032..350f88fc5387 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,9 +1,9 @@
# Generated by mksrcinfo v8
-# Wed Mar 27 05:28:06 UTC 2019
+# Wed Apr 17 06:03:51 UTC 2019
pkgbase = cups-nosystemd
pkgdesc = The CUPS Printing System - daemon package
pkgver = 2.2.11
- pkgrel = 1
+ pkgrel = 2
url = https://www.cups.org/
install = cups-nosystemd.install
arch = i686
@@ -51,6 +51,7 @@ pkgbase = cups-nosystemd
source = cups-no-export-ssllibs.patch
source = cups-no-gzip-man.patch
source = cups-1.6.2-statedir.patch
+ source = samsung-printer-workaround.patch
sha256sums = f58010813fd6903f690cdb0c0b91e4d1bc9e5b9570c28734229ba3ed2908b76c
sha256sums = 87cd833e7c07a36298341e35d5ce0534ce68fdf76ce3e9eda697e5455b963d1b
sha256sums = d87fa0f0b5ec677aae34668f260333db17ce303aa1a752cba5f8e72623d9acf9
@@ -58,6 +59,7 @@ pkgbase = cups-nosystemd
sha256sums = ff3eb0782af0405f5dafe89e04b1b4ea7a49afc5496860d724343bd04f375832
sha256sums = b8fc2e3bc603495f0278410350ea8f0161d9d83719feb64f573b63430cb4800b
sha256sums = 23349c96f2f7aeb7d48e3bcd35a969f5d5ac8f55a032b0cfaa0a03d7e37ea9af
+ sha256sums = ae3e154b8382f3412c73d863f4db095e722eb5255e15f0684b2bb9e02e5438af
pkgname = cups-nosystemd
diff --git a/PKGBUILD b/PKGBUILD
index 111e186f46ac..c42b34fc3811 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,7 +3,7 @@
pkgname="cups-nosystemd"
pkgver=2.2.11
-pkgrel=1
+pkgrel=2
pkgdesc="The CUPS Printing System - daemon package"
arch=('i686' 'x86_64')
license=('GPL')
@@ -35,6 +35,7 @@ source=(https://github.com/apple/cups/releases/download/v${pkgver}/cups-${pkgver
cups-no-export-ssllibs.patch
cups-no-gzip-man.patch
cups-1.6.2-statedir.patch
+ samsung-printer-workaround.patch
)
sha256sums=('f58010813fd6903f690cdb0c0b91e4d1bc9e5b9570c28734229ba3ed2908b76c'
'87cd833e7c07a36298341e35d5ce0534ce68fdf76ce3e9eda697e5455b963d1b'
@@ -42,7 +43,8 @@ sha256sums=('f58010813fd6903f690cdb0c0b91e4d1bc9e5b9570c28734229ba3ed2908b76c'
'57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5'
'ff3eb0782af0405f5dafe89e04b1b4ea7a49afc5496860d724343bd04f375832'
'b8fc2e3bc603495f0278410350ea8f0161d9d83719feb64f573b63430cb4800b'
- '23349c96f2f7aeb7d48e3bcd35a969f5d5ac8f55a032b0cfaa0a03d7e37ea9af')
+ '23349c96f2f7aeb7d48e3bcd35a969f5d5ac8f55a032b0cfaa0a03d7e37ea9af'
+ 'ae3e154b8382f3412c73d863f4db095e722eb5255e15f0684b2bb9e02e5438af')
prepare() {
cd cups-${pkgver}
@@ -57,6 +59,9 @@ prepare() {
# move /var/run -> /run for pid file
patch -Np1 -i "$srcdir"/cups-1.6.2-statedir.patch
+ # FS#62360 / https://github.com/apple/cups/issues/5562
+ patch -Np1 -i "$srcdir"/samsung-printer-workaround.patch
+
# set MaxLogSize to 0 to prevent using cups internal log rotation
sed -i -e '5i\ ' conf/cupsd.conf.in
sed -i -e '6i# Disable cups internal logging - use logrotate instead' conf/cupsd.conf.in
diff --git a/samsung-printer-workaround.patch b/samsung-printer-workaround.patch
new file mode 100644
index 000000000000..f4259ff061c8
--- /dev/null
+++ b/samsung-printer-workaround.patch
@@ -0,0 +1,30 @@
+diff --git a/cups/ppd.c b/cups/ppd.c
+index 435b992f4..29456d97a 100644
+--- a/cups/ppd.c
++++ b/cups/ppd.c
+@@ -1182,6 +1182,24 @@ _ppdOpen(
+ else if (!strcmp(string, "Plus90"))
+ ppd->landscape = 90;
+ }
++ else if (!strcmp(keyword, "Emulators") && string && ppd->num_emulations == 0)
++ {
++ /*
++ * Issue #5562: Samsung printer drivers incorrectly use Emulators keyword
++ * to configure themselves
++ *
++ * The Emulators keyword was loaded but never used by anything in CUPS,
++ * and has no valid purpose in CUPS. The old code was removed due to a
++ * memory leak (Issue #5475), so the following (new) code supports a single
++ * name for the Emulators keyword, allowing these drivers to work until we
++ * remove PPD and driver support entirely in a future version of CUPS.
++ */
++
++ ppd->num_emulations = 1;
++ ppd->emulations = calloc(1, sizeof(ppd_emul_t));
++
++ strlcpy(ppd->emulations[0].name, string, sizeof(ppd->emulations[0].name));
++ }
+ else if (!strcmp(keyword, "JobPatchFile"))
+ {
+ /*
+