aboutsummaryrefslogtreecommitdiff
path: root/src/os/unix/ngx_recv.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2003-11-14 07:20:34 +0000
committerIgor Sysoev <igor@sysoev.ru>2003-11-14 07:20:34 +0000
commit7f9d894e1069306f7361201a77efbe7b866024ff (patch)
tree9779ce5dd7d38af4c8039047768cedc92c31ec1f /src/os/unix/ngx_recv.c
parent45890ea8c13a561fe3fd66bf639ad429f3c18846 (diff)
downloadnginx-7f9d894e1069306f7361201a77efbe7b866024ff.tar.gz
nginx-7f9d894e1069306f7361201a77efbe7b866024ff.zip
nginx-0.0.1-2003-11-14-10:20:34 import
Diffstat (limited to 'src/os/unix/ngx_recv.c')
-rw-r--r--src/os/unix/ngx_recv.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/os/unix/ngx_recv.c b/src/os/unix/ngx_recv.c
index 1a14fd963..e75937957 100644
--- a/src/os/unix/ngx_recv.c
+++ b/src/os/unix/ngx_recv.c
@@ -40,6 +40,8 @@ ssize_t ngx_unix_recv(ngx_connection_t *c, char *buf, size_t size)
}
do {
+ rev->ready = 1;
+
n = recv(c->fd, buf, size, 0);
ngx_log_debug(c->log, "recv: %d:%d" _ n _ size);
@@ -78,11 +80,14 @@ ssize_t ngx_unix_recv(ngx_connection_t *c, char *buf, size_t size)
}
rev->ready = 0;
- rev->error = 1;
n = ngx_unix_recv_error(rev, ngx_socket_errno);
} while (n == NGX_EINTR);
+ if (n == NGX_ERROR){
+ rev->error = 1;
+ }
+
return n;
}
@@ -96,6 +101,8 @@ ssize_t ngx_unix_recv(ngx_connection_t *c, char *buf, size_t size)
rev = c->read;
do {
+ rev->ready = 1;
+
n = recv(c->fd, buf, size, 0);
ngx_log_debug(c->log, "recv: %d:%d" _ n _ size);
@@ -113,11 +120,14 @@ ssize_t ngx_unix_recv(ngx_connection_t *c, char *buf, size_t size)
}
rev->ready = 0;
- rev->error = 1;
n = ngx_unix_recv_error(rev, ngx_socket_errno);
} while (n == NGX_EINTR);
+ if (n == NGX_ERROR){
+ rev->error = 1;
+ }
+
return n;
}