[cups.bugs] [LOW] STR #2664: usb backend busy-loops due to runloop logic error
twaugh at redhat.com
Wed Jan 9 08:07:09 PST 2008
DO NOT REPLY TO THIS MESSAGE. INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.
A logic error in backend/runloop.c causes the usb backend to use very much
more power than it needs to.
The situation that triggers this is that backendRunLoop() is entered with
use_bc==0 and side_cb!=NULL.
When print_bytes==0 in this situation, I think that this piece of code:
if (print_bytes || !use_bc)
is trying to add device_fd to the output set if the select() call will be
skipped. This worked up until revision 6170, which added the side_cb
A patch to fix the logic error is attached. Original bug report:
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
More information about the cups-devel