diff src/http/modules/proxy/ngx_http_event_proxy_handler.c @ 86:3973260705cc

nginx-0.0.1-2003-05-12-19:52:24 import
author Igor Sysoev <igor@sysoev.ru>
date Mon, 12 May 2003 15:52:24 +0000
parents fab4cb00fe5b
children
line wrap: on
line diff
--- a/src/http/modules/proxy/ngx_http_event_proxy_handler.c
+++ b/src/http/modules/proxy/ngx_http_event_proxy_handler.c
@@ -481,7 +481,7 @@ static int ngx_http_proxy_process_upstre
 
 static int ngx_http_proxy_connect(ngx_http_proxy_ctx_t *p)
 {
-    int                         rc, event;
+    int                         rc, event, instance;
     struct sockaddr_in         *addr;
     ngx_err_t                   err;
     ngx_socket_t                s;
@@ -590,6 +590,8 @@ static int ngx_http_proxy_connect(ngx_ht
     rev = &ngx_read_events[s];
     wev = &ngx_write_events[s];
 
+    instance = rev->instance;
+
     ngx_memzero(c, sizeof(ngx_connection_t));
     ngx_memzero(rev, sizeof(ngx_event_t));
     ngx_memzero(wev, sizeof(ngx_event_t));
@@ -598,7 +600,9 @@ static int ngx_http_proxy_connect(ngx_ht
     rev->data = wev->data = c;
     c->read = rev;
     c->write = wev;
-    rev->first = wev->first = 1;
+
+    rev->instance = wev->instance = !instance;
+
     rev->log = wev->log = c->log = p->log;
     c->fd = s;
     wev->close_handler = rev->close_handler = ngx_event_close_connection;
@@ -1002,7 +1006,7 @@ static int ngx_http_proxy_process_upstre
     r = p->request;
 
     for ( ;; ) {
-        rc = ngx_read_http_header_line(r, p->header_in);
+        rc = ngx_parse_http_header_line(r, p->header_in);
 
         /* a header line has been parsed successfully */