From: Igor Sysoev Date: Wed, 23 Apr 2003 14:34:42 +0000 (+0000) Subject: nginx-0.0.1-2003-04-23-18:34:42 import X-Git-Tag: release-0.1.0~370 X-Git-Url: http://git.kaiwu.me/%7Bsubstring-before(@doc,%20'.xml')%7D.html?a=commitdiff_plain;h=fb970519d45f7fb299dfaba854b8cc58d4dc4711;p=nginx.git nginx-0.0.1-2003-04-23-18:34:42 import --- diff --git a/src/http/modules/proxy/ngx_http_event_proxy_handler.c b/src/http/modules/proxy/ngx_http_event_proxy_handler.c index 26277b48d..ab90aeb3a 100644 --- a/src/http/modules/proxy/ngx_http_event_proxy_handler.c +++ b/src/http/modules/proxy/ngx_http_event_proxy_handler.c @@ -371,8 +371,7 @@ static int ngx_http_proxy_process_upstream(ngx_http_proxy_ctx_t *p, return NGX_DONE; } - if (p->tries /* STUB !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */ - + if (p->tries > 1 && (rc == NGX_HTTP_BAD_GATEWAY || rc == NGX_HTTP_GATEWAY_TIME_OUT || (rc == NGX_OK @@ -1083,7 +1082,12 @@ static int ngx_http_proxy_read_upstream_body(ngx_http_proxy_ctx_t *p) int rc; rc = ngx_event_proxy_read_upstream(p->event_proxy); - if (rc == NGX_OK) { + + if (p->event_proxy->fatal_error) { + return NGX_HTTP_INTERNAL_SERVER_ERROR; + } + + if (p->event_proxy->upstream_eof && p->event_proxy->upstream_error) { rc = ngx_event_close_connection(p->connection->read); }