From 4cb6f6806cdbe040d478b266a1d351b19341dd79 Mon Sep 17 00:00:00 2001 From: Zdenek Dohnal Date: Tue, 13 Apr 2021 15:47:37 +0200 Subject: [PATCH] backend/usb-libusb.c: Revert enforcing read limits This commit reverts the change introduced by 2.2.12 [1] - its implementation caused a regression with Lexmark filters. [1] https://github.com/apple/cups/commit/35e927f83529cd9b4bc37bcd418c50e307fced35 --- CHANGES.md | 1 + backend/usb-libusb.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index b52237bf6b..96636dbf62 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -46,6 +46,7 @@ CUPS v2.4rc1 (Pending) `LPDConfigFile`, `KeepAliveTimeout`, `RIPCache`, and `SMBConfigFile` directives in `cupsd.conf` and `cups-files.conf`. - Use 60s timeout for reading at backchannel (Issue #160) +- Revert enforcing read limits (Issue #72) CUPS v2.3.3op2 (February 1, 2021) diff --git a/backend/usb-libusb.c b/backend/usb-libusb.c index fbb0d9d897..89b5182f70 100644 --- a/backend/usb-libusb.c +++ b/backend/usb-libusb.c @@ -1721,7 +1721,8 @@ static void *read_thread(void *reference) * Make sure this loop executes no more than once every 250 miliseconds... */ - if ((g.wait_eof || !g.read_thread_stop)) + if ((readstatus != LIBUSB_SUCCESS || rbytes == 0) && + (g.wait_eof || !g.read_thread_stop)) usleep(250000); } while (g.wait_eof || !g.read_thread_stop); -- 2.47.2