From: Valentin Bartenev Date: Wed, 23 Mar 2016 14:44:04 +0000 (+0300) Subject: Core: use ngx_palloc_small() to allocate ngx_pool_large_t. X-Git-Url: http://www.kaiwu.me/postgresql/commit/?a=commitdiff_plain;h=9d08bda415b9c987b7a3503bf5fa45cfda15df2e;p=nginx.git Core: use ngx_palloc_small() to allocate ngx_pool_large_t. This structure cannot be allocated as a large block anyway, otherwise that will result in infinite recursion, since each large allocation requires to allocate another ngx_pool_large_t. The room for the structure is guaranteed by the NGX_MIN_POOL_SIZE constant. --- diff --git a/src/core/ngx_palloc.c b/src/core/ngx_palloc.c index 587a1e587..91e7cd71c 100644 --- a/src/core/ngx_palloc.c +++ b/src/core/ngx_palloc.c @@ -231,7 +231,7 @@ ngx_palloc_large(ngx_pool_t *pool, size_t size) } } - large = ngx_palloc(pool, sizeof(ngx_pool_large_t)); + large = ngx_palloc_small(pool, sizeof(ngx_pool_large_t), 1); if (large == NULL) { ngx_free(p); return NULL; @@ -256,7 +256,7 @@ ngx_pmemalign(ngx_pool_t *pool, size_t size, size_t alignment) return NULL; } - large = ngx_palloc(pool, sizeof(ngx_pool_large_t)); + large = ngx_palloc_small(pool, sizeof(ngx_pool_large_t), 1); if (large == NULL) { ngx_free(p); return NULL;