]> git.kaiwu.me - nginx.git/commitdiff
Win32: fixed C4319 warning with MSVC 2022 x86.
authorAleksei Bavshin <a.bavshin@nginx.com>
Tue, 23 Dec 2025 18:44:13 +0000 (10:44 -0800)
committerRoman Arutyunyan <arutyunyan.roman@gmail.com>
Wed, 4 Feb 2026 17:22:23 +0000 (21:22 +0400)
The warning started to appear in Visual Studio 2022 version 17.14.21,
which corresponds to the C/C++ compiler version 19.44.35221.

The appropriate fix is to avoid mixing uint64_t and ngx_uint_t in an
expression with bitwise operations.  We can do that here because both
the original shm->size value and the result of the expression are 32-bit
platform words.

src/os/win32/ngx_shmem.c

index c3ed699f72985d2f769e30f30680ec81c0f2318c..4932764e82a1143e77b1c6ad3b66e648df2babcb 100644 (file)
@@ -82,7 +82,7 @@ ngx_shm_alloc(ngx_shm_t *shm)
     shm->addr = MapViewOfFileEx(shm->handle, FILE_MAP_WRITE, 0, 0, 0, base);
 
     if (shm->addr != NULL) {
-        base += ngx_align(size, ngx_allocation_granularity);
+        base += ngx_align(shm->size, ngx_allocation_granularity);
         return NGX_OK;
     }