diff options
author | Igor Sysoev <igor@sysoev.ru> | 2009-11-15 08:56:40 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2009-11-15 08:56:40 +0000 |
commit | fc514f1d073c9b9cb0961749812be4cffcd80abe (patch) | |
tree | e556714b1ddaa49b30b435d0423c6df8bfd44335 /src/os/unix/ngx_alloc.c | |
parent | 950fb268a2b89f782d8f74278a3878651aa3df6f (diff) | |
download | nginx-fc514f1d073c9b9cb0961749812be4cffcd80abe.tar.gz nginx-fc514f1d073c9b9cb0961749812be4cffcd80abe.zip |
fix posix_memalign() error handling
Diffstat (limited to 'src/os/unix/ngx_alloc.c')
-rw-r--r-- | src/os/unix/ngx_alloc.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/os/unix/ngx_alloc.c b/src/os/unix/ngx_alloc.c index c38d7d27e..253117434 100644 --- a/src/os/unix/ngx_alloc.c +++ b/src/os/unix/ngx_alloc.c @@ -51,11 +51,15 @@ void * ngx_memalign(size_t alignment, size_t size, ngx_log_t *log) { void *p; + int err; - if (posix_memalign(&p, alignment, size) == -1) { - ngx_log_error(NGX_LOG_EMERG, log, ngx_errno, + err = posix_memalign(&p, alignment, size); + + if (err) { + ngx_log_error(NGX_LOG_EMERG, log, err, "posix_memalign() %uz bytes aligned to %uz failed", size, alignment); + p = NULL; } ngx_log_debug2(NGX_LOG_DEBUG_ALLOC, log, 0, |