From 7ca5962d2ddb69e0bc422f173aac80f98d3f1f2f Mon Sep 17 00:00:00 2001 From: Sergey Lyubka <valenok@gmail.com> Date: Tue, 16 Jul 2013 17:17:36 +0100 Subject: [PATCH] in pull_all() and read_request(), respect ctx->stop_flag() --- mongoose.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mongoose.c b/mongoose.c index b92b0abbf..27d271eae 100644 --- a/mongoose.c +++ b/mongoose.c @@ -1528,7 +1528,7 @@ static int pull(FILE *fp, struct mg_connection *conn, char *buf, int len) { static int pull_all(FILE *fp, struct mg_connection *conn, char *buf, int len) { int n, nread = 0; - while (len > 0) { + while (len > 0 && conn->ctx->stop_flag == 0) { n = pull(fp, conn, buf + nread, len); if (n < 0) { nread = n; // Propagate the error @@ -3052,7 +3052,8 @@ static int read_request(FILE *fp, struct mg_connection *conn, int request_len, n = 0; request_len = get_request_len(buf, *nread); - while (*nread < bufsiz && request_len == 0 && + while (conn->ctx->stop_flag == 0 && + *nread < bufsiz && request_len == 0 && (n = pull(fp, conn, buf + *nread, bufsiz - *nread)) > 0) { *nread += n; assert(*nread <= bufsiz); -- GitLab