Mercurial > hg > nginx
diff src/core/ngx_palloc.c @ 2337:3983e673cd40
ngx_reset_pool()
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 25 Nov 2008 14:25:20 +0000 |
parents | 857c161d2768 |
children | 3a8a53c0c42f |
line wrap: on
line diff
--- a/src/core/ngx_palloc.c +++ b/src/core/ngx_palloc.c @@ -91,6 +91,26 @@ ngx_destroy_pool(ngx_pool_t *pool) } +void +ngx_reset_pool(ngx_pool_t *pool) +{ + ngx_pool_t *p; + ngx_pool_large_t *l; + + for (l = pool->large; l; l = l->next) { + if (l->alloc) { + ngx_free(l->alloc); + } + } + + pool->large = NULL; + + for (p = pool; p; p = p->d.next) { + p->d.last = (u_char *) p + sizeof(ngx_pool_t); + } +} + + void * ngx_palloc(ngx_pool_t *pool, size_t size) {