diff -up cups-1.6.3/scheduler/client.c.nodatadelay cups-1.6.3/scheduler/client.c
--- cups-1.6.3/scheduler/client.c.nodatadelay 2014-09-02 10:50:07.714003098 +0100
+++ cups-1.6.3/scheduler/client.c 2014-09-02 10:50:30.960118311 +0100
@@ -2138,7 +2138,9 @@ cupsdReadClient(cupsd_client_t *con) /*
if (con->http.state != HTTP_POST_SEND)
{
- if ((bytes = httpRead2(HTTP(con), line, sizeof(line))) < 0)
+ if (!httpWait(HTTP(con), 0))
+ return;
+ else if ((bytes = httpRead2(HTTP(con), line, sizeof(line))) < 0)
{
if (con->http.error && con->http.error != EPIPE)
cupsdLogMessage(CUPSD_LOG_DEBUG,