# HG changeset patch # User Igor Sysoev # Date 1258275400 0 # Node ID d4ad1b0b6c8d8f30f3b88cfceee9c2cacfa745c6 # Parent be47fe127f8c065813583276c934619bc860d709 fix posix_memalign() error handling diff -r be47fe127f8c -r d4ad1b0b6c8d src/os/unix/ngx_alloc.c --- a/src/os/unix/ngx_alloc.c Fri Nov 13 20:41:41 2009 +0000 +++ b/src/os/unix/ngx_alloc.c Sun Nov 15 08:56:40 2009 +0000 @@ -51,11 +51,15 @@ 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,