diff options
author | Alexey D | 2015-03-23 07:56:36 +0300 |
---|---|---|
committer | Alexey D | 2015-06-11 10:07:11 +0300 |
commit | f39e8b578109571db9a00af33e3535fc24604468 (patch) | |
tree | c6373223a31784a62256d358783b70f0166e5e85 | |
parent | 775dbe90cbdfab47f192e9ad8cbe5b57f35cd73f (diff) | |
download | aur-f39e8b578109571db9a00af33e3535fc24604468.tar.gz |
version 2.0.2-2
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | PKGBUILD | 10 | ||||
-rw-r--r-- | cups-busy-loop.patch | 35 |
3 files changed, 46 insertions, 3 deletions
@@ -1,7 +1,7 @@ pkgbase = cups-nosystemd pkgdesc = The CUPS Printing System - daemon package pkgver = 2.0.2 - pkgrel = 1 + pkgrel = 2 url = http://www.cups.org/ install = cups-nosystemd.install arch = i686 @@ -52,6 +52,7 @@ pkgbase = cups-nosystemd source = cups-no-gzip-man.patch source = cups-1.6.0-fix-install-perms.patch source = cups-1.6.2-statedir.patch + source = cups-busy-loop.patch md5sums = 6e0ea72dbafcf5baaa1cf4178e71096d md5sums = 9657daa21760bb0b5fa3d8b51d5e01a1 md5sums = fc8286f185e2cc5f7e1f6843bf193e2b @@ -61,6 +62,7 @@ pkgbase = cups-nosystemd md5sums = 90c30380d4c8cd48a908cfdadae1ea24 md5sums = 5117f65342fcc69c6a506529e4daca9e md5sums = 451609db34f95209d64c38474de27ce1 + md5sums = 68c70bda07ccb8caaa7a2df485a16092 pkgname = cups-nosystemd @@ -3,7 +3,7 @@ pkgname="cups-nosystemd" pkgver=2.0.2 -pkgrel=1 +pkgrel=2 pkgdesc="The CUPS Printing System - daemon package" arch=('i686' 'x86_64') license=('GPL') @@ -37,6 +37,8 @@ source=(http://www.cups.org/software/${pkgver}/cups-${pkgver}-source.tar.bz2 cups-no-gzip-man.patch cups-1.6.0-fix-install-perms.patch cups-1.6.2-statedir.patch + # bugfix + cups-busy-loop.patch ) md5sums=('6e0ea72dbafcf5baaa1cf4178e71096d' '9657daa21760bb0b5fa3d8b51d5e01a1' @@ -46,7 +48,8 @@ md5sums=('6e0ea72dbafcf5baaa1cf4178e71096d' '1beb4896f217bc241bc08a422274ec0c' '90c30380d4c8cd48a908cfdadae1ea24' '5117f65342fcc69c6a506529e4daca9e' - '451609db34f95209d64c38474de27ce1') + '451609db34f95209d64c38474de27ce1' + '68c70bda07ccb8caaa7a2df485a16092') prepare() { cd cups-${pkgver} @@ -66,6 +69,9 @@ prepare() { # fix permissions on some files (by Gentoo) patch -Np0 -i "$srcdir"/cups-1.6.0-fix-install-perms.patch + # Avoid busy loop in cupsd when connection is closed after request Fedora ##1179596 - may solve FS#42666 + patch -Np1 -i "${srcdir}"/cups-busy-loop.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/cups-busy-loop.patch b/cups-busy-loop.patch new file mode 100644 index 00000000000..4483aa8cad6 --- /dev/null +++ b/cups-busy-loop.patch @@ -0,0 +1,35 @@ +diff -up cups-2.0.2/scheduler/client.c.busy-loop cups-2.0.2/scheduler/client.c +--- cups-2.0.2/scheduler/client.c.busy-loop 2014-08-28 16:37:22.000000000 +0100 ++++ cups-2.0.2/scheduler/client.c 2015-03-16 17:24:32.506232983 +0000 +@@ -585,6 +585,17 @@ cupsdReadClient(cupsd_client_t *con) /* + * connection and we need to shut it down... + */ + ++ if (!httpGetReady(con->http) && recv(httpGetFd(con->http), buf, 1, MSG_PEEK) < 1) ++ { ++ /* ++ * Connection closed... ++ */ ++ ++ cupsdLogClient(con, CUPSD_LOG_DEBUG, "Closing on EOF."); ++ cupsdCloseClient(con); ++ return; ++ } ++ + cupsdLogClient(con, CUPSD_LOG_DEBUG, "Closing on unexpected HTTP read state %s.", + httpStateString(httpGetState(con->http))); + cupsdCloseClient(con); +@@ -1979,12 +1990,6 @@ cupsdReadClient(cupsd_client_t *con) /* + + if (httpGetState(con->http) == HTTP_STATE_POST_SEND) + { +- /* +- * Don't listen for activity until we decide to do something with this... +- */ +- +- cupsdAddSelect(httpGetFd(con->http), NULL, NULL, con); +- + if (con->file >= 0) + { + fstat(con->file, &filestats); + |