diff --git a/src/core/ngx_open_file_cache.c b/src/core/ngx_open_file_cache.c index d518f4b96..3b3e62876 100644 --- a/src/core/ngx_open_file_cache.c +++ b/src/core/ngx_open_file_cache.c @@ -33,7 +33,6 @@ static void ngx_open_file_cache_remove(ngx_event_t *ev); ngx_open_file_cache_t * ngx_open_file_cache_init(ngx_pool_t *pool, ngx_uint_t max, time_t inactive) { - ngx_rbtree_node_t *sentinel; ngx_pool_cleanup_t *cln; ngx_open_file_cache_t *cache; @@ -48,12 +47,7 @@ ngx_open_file_cache_init(ngx_pool_t *pool, ngx_uint_t max, time_t inactive) cache->list_tail.prev = &cache->list_head; cache->list_tail.next = NULL; - sentinel = ngx_palloc(pool, sizeof(ngx_rbtree_node_t)); - if (sentinel == NULL) { - return NULL; - } - - ngx_rbtree_init(&cache->rbtree, sentinel, + ngx_rbtree_init(&cache->rbtree, &cache->sentinel, ngx_open_file_cache_rbtree_insert_value); cache->current = 0; diff --git a/src/core/ngx_open_file_cache.h b/src/core/ngx_open_file_cache.h index cc0d899a2..272bcb535 100644 --- a/src/core/ngx_open_file_cache.h +++ b/src/core/ngx_open_file_cache.h @@ -63,6 +63,7 @@ struct ngx_cached_open_file_s { typedef struct { ngx_rbtree_t rbtree; + ngx_rbtree_node_t sentinel; ngx_cached_open_file_t list_head; ngx_cached_open_file_t list_tail;