summaryrefslogtreecommitdiffhomepage
path: root/src/event/ngx_event_accept.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/event/ngx_event_accept.c')
-rw-r--r--src/event/ngx_event_accept.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/event/ngx_event_accept.c b/src/event/ngx_event_accept.c
index 720b3a53b..75dda55c0 100644
--- a/src/event/ngx_event_accept.c
+++ b/src/event/ngx_event_accept.c
@@ -32,6 +32,11 @@ void ngx_event_accept(ngx_event_t *ev)
#endif
do {
+
+ /* Create the pool before accept() to avoid copy the sockaddr.
+ Although accept() can fail it's uncommon case
+ and the pool can be got from the free pool list */
+
pool = ngx_create_pool(ls->pool_size, ev->log);
if (pool == NULL) {
return;