comparison src/core/ngx_open_file_cache.c @ 1937:c46432b9dbb7

fix case when errors are not cached, and a file was not used often enough to keep open and it has been removed before it was kept open
author Igor Sysoev <igor@sysoev.ru>
date Thu, 13 Mar 2008 12:59:25 +0000
parents e829527ca810
children ed71d58c0cf3
comparison
equal deleted inserted replaced
1936:e829527ca810 1937:c46432b9dbb7
409 if (file && file->count == 0) { 409 if (file && file->count == 0) {
410 ngx_rbtree_delete(&cache->rbtree, &file->node); 410 ngx_rbtree_delete(&cache->rbtree, &file->node);
411 411
412 cache->current--; 412 cache->current--;
413 413
414 if (ngx_close_file(file->fd) == NGX_FILE_ERROR) { 414 if (of->fd != NGX_INVALID_FILE) {
415 ngx_log_error(NGX_LOG_ALERT, pool->log, ngx_errno, 415 if (ngx_close_file(file->fd) == NGX_FILE_ERROR) {
416 ngx_close_file_n " \"%s\" failed", file->name); 416 ngx_log_error(NGX_LOG_ALERT, pool->log, ngx_errno,
417 ngx_close_file_n " \"%s\" failed", file->name);
418 }
417 } 419 }
418 420
419 ngx_free(file->name); 421 ngx_free(file->name);
420 ngx_free(file); 422 ngx_free(file);
421 } 423 }