diff -up cups-1.3.7/scheduler/client.c.firefox3 cups-1.3.7/scheduler/client.c --- cups-1.3.7/scheduler/client.c.firefox3 2008-08-01 16:58:05.000000000 +0100 +++ cups-1.3.7/scheduler/client.c 2008-08-01 16:58:48.000000000 +0100 @@ -772,8 +772,8 @@ cupsdFlushHeader(cupsd_client_t *con) /* * 'cupsdReadClient()' - Read data from a client. */ -void -cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */ +static void +read_client (cupsd_client_t *con) /* I - Client to read from */ { char line[32768], /* Line from client... */ operation[64], /* Operation code from socket */ @@ -2274,6 +2274,15 @@ cupsdReadClient(cupsd_client_t *con) /* cupsdCloseClient(con); } +void +cupsdReadClient(cupsd_client_t *con) +{ + do + { + read_client (con); + } while (httpCheck (con)); +} + /* * 'cupsdSendCommand()' - Send output from a command via HTTP.