comparison src/http/modules/perl/nginx.xs @ 340:10cc350ed8a1 NGINX_0_6_14

nginx 0.6.14 *) Change: now by default the "echo" SSI command uses entity encoding. *) Feature: the "encoding" parameter in the "echo" SSI command. *) Feature: the "access_log" directive may be used inside the "limit_except" block. *) Bugfix: if all upstream servers were failed, then all servers had got weight the was equal one until servers became alive; bug appeared in 0.6.6. *) Bugfix: a segmentation fault occurred in worker process if $date_local and $date_gmt were used outside the ngx_http_ssi_filter_module. *) Bugfix: a segmentation fault might occur in worker process if debug log was enabled. Thanks to Andrei Nigmatulin. *) Bugfix: ngx_http_memcached_module did not set $upstream_response_time. Thanks to Maxim Dounin. *) Bugfix: a worker process may got caught in an endless loop, if the memcached was used. *) Bugfix: nginx supported low case only "close" and "keep-alive" values in the "Connection" request header line; bug appeared in 0.6.11. *) Bugfix: sub_filter did not work with empty substitution. *) Bugfix: in sub_filter parsing.
author Igor Sysoev <http://sysoev.ru>
date Mon, 15 Oct 2007 00:00:00 +0400
parents 3a91bfeffaba
children b743d290eb3b
comparison
equal deleted inserted replaced
339:d19550b67059 340:10cc350ed8a1
635 if (b->file == NULL) { 635 if (b->file == NULL) {
636 XSRETURN_EMPTY; 636 XSRETURN_EMPTY;
637 } 637 }
638 638
639 clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); 639 clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
640 640
641 of.test_dir = 0; 641 of.test_dir = 0;
642 of.retest = clcf->open_file_cache_retest; 642 of.retest = clcf->open_file_cache_retest;
643 of.errors = clcf->open_file_cache_errors; 643 of.errors = clcf->open_file_cache_errors;
644 of.events = clcf->open_file_cache_events; 644 of.events = clcf->open_file_cache_events;
645 645
646 path.len = ngx_strlen(filename); 646 path.len = ngx_strlen(filename);
647 647
648 path.data = ngx_pcalloc(r->pool, path.len + 1); 648 path.data = ngx_pcalloc(r->pool, path.len + 1);
649 if (path.data == NULL) { 649 if (path.data == NULL) {
650 XSRETURN_EMPTY; 650 XSRETURN_EMPTY;
651 } 651 }
652 652
653 (void) ngx_cpystrn(path.data, filename, path.len + 1); 653 (void) ngx_cpystrn(path.data, filename, path.len + 1);
654 654
655 rc = ngx_open_cached_file(clcf->open_file_cache, &path, &of, r->pool); 655 rc = ngx_open_cached_file(clcf->open_file_cache, &path, &of, r->pool);
656 656
657 if (rc == NGX_ERROR) { 657 if (rc == NGX_ERROR) {
658 658
659 if (of.err == 0) { 659 if (of.err == 0) {
910 } 910 }
911 911
912 if (value) { 912 if (value) {
913 vv->len = val.len; 913 vv->len = val.len;
914 vv->valid = 1; 914 vv->valid = 1;
915 vv->no_cachable = 0; 915 vv->no_cacheable = 0;
916 vv->not_found = 0; 916 vv->not_found = 0;
917 vv->data = val.data; 917 vv->data = val.data;
918 918
919 XSRETURN_UNDEF; 919 XSRETURN_UNDEF;
920 } 920 }