Mercurial > hg > nginx-vendor-1-0
comparison src/http/ngx_http_core_module.c @ 434:49a0eb7ce20c NGINX_0_7_29
nginx 0.7.29
*) Bugfix: the "fastcgi_pass" and "proxy_pass" directives did not
support variables if unix domain sockets were used.
*) Bugfixes in subrequest processing; the bugs had appeared in 0.7.25.
*) Bugfix: a "100 Continue" response was issued for HTTP/1.0 requests;
Thanks to Maxim Dounin.
*) Bugfix: in memory allocation in the ngx_http_gzip_filter_module on
Cygwin.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Wed, 24 Dec 2008 00:00:00 +0300 |
parents | dac47e9ef0d5 |
children | ce4f9ff90bfa |
comparison
equal
deleted
inserted
replaced
433:18f6c20ac73a | 434:49a0eb7ce20c |
---|---|
860 | 860 |
861 ngx_http_finalize_request(r, NGX_HTTP_REQUEST_ENTITY_TOO_LARGE); | 861 ngx_http_finalize_request(r, NGX_HTTP_REQUEST_ENTITY_TOO_LARGE); |
862 return NGX_OK; | 862 return NGX_OK; |
863 } | 863 } |
864 | 864 |
865 if (r->headers_in.expect) { | 865 if (r->headers_in.expect && r->http_version > NGX_HTTP_VERSION_10) { |
866 expect = ngx_http_core_send_continue(r); | 866 expect = ngx_http_core_send_continue(r); |
867 | 867 |
868 if (expect != NGX_OK) { | 868 if (expect != NGX_OK) { |
869 ngx_http_finalize_request(r, expect); | 869 ngx_http_finalize_request(r, expect); |
870 return NGX_OK; | 870 return NGX_OK; |
1080 if (tf->lengths) { | 1080 if (tf->lengths) { |
1081 ngx_memzero(&e, sizeof(ngx_http_script_engine_t)); | 1081 ngx_memzero(&e, sizeof(ngx_http_script_engine_t)); |
1082 | 1082 |
1083 e.ip = tf->lengths->elts; | 1083 e.ip = tf->lengths->elts; |
1084 e.request = r; | 1084 e.request = r; |
1085 e.flushed = 1; | |
1086 | 1085 |
1087 /* 1 is for terminating '\0' as in static names */ | 1086 /* 1 is for terminating '\0' as in static names */ |
1088 len = 1; | 1087 len = 1; |
1089 | 1088 |
1090 while (*(uintptr_t *) e.ip) { | 1089 while (*(uintptr_t *) e.ip) { |
1125 path.len = (name + tf->name.len - 1) - path.data; | 1124 path.len = (name + tf->name.len - 1) - path.data; |
1126 | 1125 |
1127 } else { | 1126 } else { |
1128 e.ip = tf->values->elts; | 1127 e.ip = tf->values->elts; |
1129 e.pos = name; | 1128 e.pos = name; |
1129 e.flushed = 1; | |
1130 | 1130 |
1131 while (*(uintptr_t *) e.ip) { | 1131 while (*(uintptr_t *) e.ip) { |
1132 code = *(ngx_http_script_code_pt *) e.ip; | 1132 code = *(ngx_http_script_code_pt *) e.ip; |
1133 code((ngx_http_script_engine_t *) &e); | 1133 code((ngx_http_script_engine_t *) &e); |
1134 } | 1134 } |
2091 sr->parent = r; | 2091 sr->parent = r; |
2092 sr->post_subrequest = ps; | 2092 sr->post_subrequest = ps; |
2093 sr->read_event_handler = ngx_http_request_empty_handler; | 2093 sr->read_event_handler = ngx_http_request_empty_handler; |
2094 sr->write_event_handler = ngx_http_handler; | 2094 sr->write_event_handler = ngx_http_handler; |
2095 | 2095 |
2096 if (c->data == r) { | 2096 if (c->data == r && r->postponed == NULL) { |
2097 c->data = sr; | 2097 c->data = sr; |
2098 } | 2098 } |
2099 | 2099 |
2100 sr->in_addr = r->in_addr; | 2100 sr->in_addr = r->in_addr; |
2101 sr->port = r->port; | 2101 sr->port = r->port; |