comparison src/http/ngx_http_file_cache.c @ 594:3436cf38d59e NGINX_0_8_49

nginx 0.8.49 *) Feature: the "image_filter_jpeg_quality" directive supports variables. *) Bugfix: a segmentation fault might occur in a worker process, if the $geoip_region_name variables was used; the bug had appeared in 0.8.48. *) Bugfix: errors intercepted by error_page were cached only for next request; the bug had appeared in 0.8.48.
author Igor Sysoev <http://sysoev.ru>
date Mon, 09 Aug 2010 00:00:00 +0400
parents 09d5f308901f
children 6c96fdd2dfc3
comparison
equal deleted inserted replaced
593:ad310549c5d4 594:3436cf38d59e
579 579
580 ngx_rbtree_insert(&cache->sh->rbtree, &fcn->node); 580 ngx_rbtree_insert(&cache->sh->rbtree, &fcn->node);
581 581
582 fcn->uses = 1; 582 fcn->uses = 1;
583 fcn->count = 1; 583 fcn->count = 1;
584 fcn->updating = 0;
584 585
585 renew: 586 renew:
586 587
587 rc = NGX_DECLINED; 588 rc = NGX_DECLINED;
588 589
925 if (c->updating) { 926 if (c->updating) {
926 fcn->updating = 0; 927 fcn->updating = 0;
927 } 928 }
928 929
929 if (c->error) { 930 if (c->error) {
930 fcn->valid_sec = c->valid_sec;
931 fcn->valid_msec = c->valid_msec;
932 fcn->error = c->error; 931 fcn->error = c->error;
932
933 if (c->valid_sec) {
934 fcn->valid_sec = c->valid_sec;
935 fcn->valid_msec = c->valid_msec;
936 }
933 937
934 } else if (!fcn->exists && fcn->count == 0 && c->min_uses == 1) { 938 } else if (!fcn->exists && fcn->count == 0 && c->min_uses == 1) {
935 ngx_queue_remove(&fcn->queue); 939 ngx_queue_remove(&fcn->queue);
936 ngx_rbtree_delete(&cache->sh->rbtree, &fcn->node); 940 ngx_rbtree_delete(&cache->sh->rbtree, &fcn->node);
937 ngx_slab_free_locked(cache->shpool, fcn); 941 ngx_slab_free_locked(cache->shpool, fcn);
1424 fcn->uses = 1; 1428 fcn->uses = 1;
1425 fcn->count = 0; 1429 fcn->count = 0;
1426 fcn->valid_msec = c->valid_msec; 1430 fcn->valid_msec = c->valid_msec;
1427 fcn->error = 0; 1431 fcn->error = 0;
1428 fcn->exists = 1; 1432 fcn->exists = 1;
1433 fcn->updating = 0;
1429 fcn->uniq = c->uniq; 1434 fcn->uniq = c->uniq;
1430 fcn->valid_sec = c->valid_sec; 1435 fcn->valid_sec = c->valid_sec;
1431 fcn->body_start = c->body_start; 1436 fcn->body_start = c->body_start;
1432 fcn->length = c->length; 1437 fcn->length = c->length;
1433 1438