Description of problem: The bluetooth CUPS backend should check whether the 'CLASS' environment variable is set the first time it fails to establish contact with the device. If the environment variable is set, it should do this: fputs ("INFO: Unable to contact printer, queuing on " "next printer in class...\n", stderr); sleep (5); exit (CUPS_BACKEND_FAILED); Version-Release number of selected component (if applicable): 3.20-6.fc8
So, we should only loop when the CLASS envvar is present, and exit as above otherwise?
The other way around: if the CLASS environment variable is present and it fails to contact the printer, it needs to exit. That way, the scheduler will re-queue it on the next available printer in that class. If CLASS is not set, it should loop as normal.
Fixed upstream.