# HG changeset patch # User Igor Sysoev # Date 1213995460 0 # Node ID cca975b532bf6a9d3ff2c85e3e71605f55e98881 # Parent 989176d3ffc53525b94c6055732835f5eb977ad6 small optimization diff --git a/src/core/ngx_palloc.c b/src/core/ngx_palloc.c --- a/src/core/ngx_palloc.c +++ b/src/core/ngx_palloc.c @@ -154,13 +154,19 @@ static void * ngx_palloc_block(ngx_pool_t *pool, size_t size) { u_char *m; + size_t psize; ngx_pool_t *p, *new, *current; - new = ngx_create_pool((size_t) (pool->d.end - (u_char *) pool), pool->log); + psize = (size_t) (pool->d.end - (u_char *) pool); + + new = ngx_alloc(size, pool->log); if (new == NULL) { return NULL; } + new->d.end = (u_char *) new + psize; + new->d.next = NULL; + current = pool->current; for (p = current; p->d.next; p = p->d.next) {