diff -up cups-1.3.5/backend/runloop.c~ cups-1.3.5/backend/runloop.c --- cups-1.3.5/backend/runloop.c~ 2007-08-22 19:34:34.000000000 +0100 +++ cups-1.3.5/backend/runloop.c 2008-01-09 15:37:44.000000000 +0000 @@ -216,7 +216,7 @@ backendRunLoop( FD_SET(CUPS_SC_FD, &input); FD_ZERO(&output); - if (print_bytes || !use_bc) + if (print_bytes || (!use_bc && !side_cb)) FD_SET(device_fd, &output); if (use_bc || side_cb)