We have prepared a patch for the package in Ubuntu 18.04 (CUPS 2.2.7). We would like to request to include a solution like this for at least Ubuntu 18.04.
We also made a pull request in the official CUPS repository: https://github.com/apple/cups/issues/5817 https://github.com/apple/cups/pull/5818 However, we don't have plans to upgrade or change the distribution we use (Ubuntu 18.04), and this issue is affecting us considerably. ** Bug watch added: github.com/apple/cups/issues #5817 https://github.com/apple/cups/issues/5817 ** Patch added: "usb-libusb.c.patch" https://bugs.launchpad.net/ubuntu/+source/cups/+bug/1890572/+attachment/5399506/+files/usb-libusb.c.patch -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to cups in Ubuntu. https://bugs.launchpad.net/bugs/1890572 Title: USB backend never ends if the printer is not connected Status in cups package in Ubuntu: New Bug description: USB backend never ends if the printer is not connected. We have been able to identify a infinity loop in print_device function in usb- libusb.c file: ``` fprintf(stderr, "DEBUG: Printing on printer with URI: %s\n", uri); while ((g.printer = find_device(print_cb, uri)) == NULL) { _cupsLangPrintFilter(stderr, "INFO", _("Waiting for printer to become available.")); sleep(5); } ``` It's also easy to test by invoking the backend by hand: ``` # export DEVICE_URI='usb://Printer/Model?serial=?' # /usr/lib/cups/backend/usb 0 root title 1 '' data.file DEBUG: Loading USB quirks from "/usr/share/cups/usb". DEBUG: Loaded 159 quirks. DEBUG: Printing on printer with URI: usb://Printer/Model?serial=? DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. ... ``` Setting a job timeout policy or manually stopping work are not options for us. We may have jobs that take hours to complete. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/cups/+bug/1890572/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp