# HG changeset patch # User Maxim Dounin <mdou...@mdounin.ru> # Date 1748209484 -10800 # Mon May 26 00:44:44 2025 +0300 # Node ID 3e11162ed39312387fc79a731071b0a50aa15acc # Parent 4eed7851024b4ca5d77107676025e84324e23c74 Adjusted mmap() type casts.
Type casting mmap() result explicitly to (u_char *) is only needed on systems where mmap() returns caddr_t, but on these systems MAP_FAILED also needs to be casted. Added appropriate type casts. diff --git a/src/os/unix/ngx_shmem.c b/src/os/unix/ngx_shmem.c --- a/src/os/unix/ngx_shmem.c +++ b/src/os/unix/ngx_shmem.c @@ -18,7 +18,7 @@ ngx_shm_alloc(ngx_shm_t *shm) PROT_READ|PROT_WRITE, MAP_ANON|MAP_SHARED, -1, 0); - if (shm->addr == MAP_FAILED) { + if (shm->addr == (u_char *) MAP_FAILED) { ngx_log_error(NGX_LOG_ALERT, shm->log, ngx_errno, "mmap(MAP_ANON|MAP_SHARED, %uz) failed", shm->size); return NGX_ERROR; @@ -55,7 +55,7 @@ ngx_shm_alloc(ngx_shm_t *shm) shm->addr = (u_char *) mmap(NULL, shm->size, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0); - if (shm->addr == MAP_FAILED) { + if (shm->addr == (u_char *) MAP_FAILED) { ngx_log_error(NGX_LOG_ALERT, shm->log, ngx_errno, "mmap(/dev/zero, MAP_SHARED, %uz) failed", shm->size); } @@ -65,7 +65,7 @@ ngx_shm_alloc(ngx_shm_t *shm) "close(\"/dev/zero\") failed"); } - return (shm->addr == MAP_FAILED) ? NGX_ERROR : NGX_OK; + return (shm->addr == (u_char *) MAP_FAILED) ? NGX_ERROR : NGX_OK; }