diff -up cups-1.3.7/backend/runloop.c.str3001-str3622 cups-1.3.7/backend/runloop.c --- cups-1.3.7/backend/runloop.c.str3001-str3622 2008-01-09 20:00:02.000000000 +0100 +++ cups-1.3.7/backend/runloop.c 2010-08-17 14:44:56.000000000 +0200 @@ -265,6 +265,14 @@ backendRunLoop( CUPS_LLCAST bc_bytes); cupsBackChannelWrite(bc_buffer, bc_bytes, 1.0); } + else if (bc_bytes < 0 && errno != EAGAIN && errno != EINTR) + { + fprintf(stderr, "DEBUG: Error reading back-channel data: %s\n", + strerror(errno)); + use_bc = 0; + } + else if (bc_bytes == 0) + use_bc = 0; } /*