diff options
| -rw-r--r-- | tests/server/sws.c | 25 | 
1 files changed, 8 insertions, 17 deletions
| diff --git a/tests/server/sws.c b/tests/server/sws.c index e5806875c..963357799 100644 --- a/tests/server/sws.c +++ b/tests/server/sws.c @@ -952,28 +952,19 @@ static int get_request(curl_socket_t sock, struct httprequest *req)    ssize_t got = 0;    int overflow = 0; -  char *pipereq = NULL; -  size_t pipereq_length = 0; -    if(req->offset >= REQBUFSIZ-1) {      /* buffer is already full; do nothing */      overflow = 1;    }    else { -    if(pipereq_length && pipereq) { -      memmove(reqbuf, pipereq, pipereq_length); -      got = curlx_uztosz(pipereq_length); -      pipereq_length = 0; -    } -    else { -      if(req->skip) -        /* we are instructed to not read the entire thing, so we make sure to -           only read what we're supposed to and NOT read the enire thing the -           client wants to send! */ -        got = sread(sock, reqbuf + req->offset, req->cl); -      else -        got = sread(sock, reqbuf + req->offset, REQBUFSIZ-1 - req->offset); -    } +    if(req->skip) +      /* we are instructed to not read the entire thing, so we make sure to +         only read what we're supposed to and NOT read the enire thing the +         client wants to send! */ +      got = sread(sock, reqbuf + req->offset, req->cl); +    else +      got = sread(sock, reqbuf + req->offset, REQBUFSIZ-1 - req->offset); +      if(got_exit_signal)        return -1;      if(got == 0) { | 
