diff -up cups-1.3.7/scheduler/client.c.str2988 cups-1.3.7/scheduler/client.c --- cups-1.3.7/scheduler/client.c.str2988 2009-02-09 16:48:12.000000000 +0000 +++ cups-1.3.7/scheduler/client.c 2009-02-09 16:48:26.000000000 +0000 @@ -1066,6 +1066,15 @@ cupsdReadClient(cupsd_client_t *con) /* break; default : + if (!data_ready(con) && recv(con->http.fd, buf, 1, MSG_PEEK) < 1) + { + /* + * Connection closed... + */ + + cupsdCloseClient(con); + return; + } break; /* Anti-compiler-warning-code */ }