Re: [PATCH] Win32: fix unique file index calculations

2024-03-27 Thread Sergey Kandaurov

> On 28 Feb 2024, at 05:25, Piotr Sikora via nginx-devel 
>  wrote:
> 
> # HG changeset patch
> # User Piotr Sikora 
> # Date 1708977635 0
> #  Mon Feb 26 20:00:35 2024 +
> # Branch patch012
> # Node ID 04e3155b3b9651fee708898aaf82ac35532806ee
> # Parent  9b57470dc49f8d8d10abe30a5df628732d7618dc
> Win32: fix unique file index calculations.
> 
> The old code was breaking strict aliasing rules.
> 
> Signed-off-by: Piotr Sikora 
> 
> diff -r 9b57470dc49f -r 04e3155b3b96 src/os/win32/ngx_files.h
> --- a/src/os/win32/ngx_files.h Mon Feb 26 20:00:33 2024 +
> +++ b/src/os/win32/ngx_files.h Mon Feb 26 20:00:35 2024 +
> @@ -154,7 +154,8 @@
> (((off_t) (fi)->nFileSizeHigh << 32) | (fi)->nFileSizeLow)
> #define ngx_file_fs_size(fi)ngx_file_size(fi)
> 
> -#define ngx_file_uniq(fi)   (*(ngx_file_uniq_t *) &(fi)->nFileIndexHigh)
> +#define ngx_file_uniq(fi)
> \
> +(((ngx_file_uniq_t) (fi)->nFileIndexHigh << 32) | (fi)->nFileIndexLow)
> 
> 
> /* 1164447360 is commented in src/os/win32/ngx_time.c */

Pushed, thanks.

-- 
Sergey Kandaurov
___
nginx-devel mailing list
nginx-devel@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-devel


[PATCH] Win32: fix unique file index calculations

2024-02-27 Thread Piotr Sikora via nginx-devel
# HG changeset patch
# User Piotr Sikora 
# Date 1708977635 0
#  Mon Feb 26 20:00:35 2024 +
# Branch patch012
# Node ID 04e3155b3b9651fee708898aaf82ac35532806ee
# Parent  9b57470dc49f8d8d10abe30a5df628732d7618dc
Win32: fix unique file index calculations.

The old code was breaking strict aliasing rules.

Signed-off-by: Piotr Sikora 

diff -r 9b57470dc49f -r 04e3155b3b96 src/os/win32/ngx_files.h
--- a/src/os/win32/ngx_files.h  Mon Feb 26 20:00:33 2024 +
+++ b/src/os/win32/ngx_files.h  Mon Feb 26 20:00:35 2024 +
@@ -154,7 +154,8 @@
 (((off_t) (fi)->nFileSizeHigh << 32) | (fi)->nFileSizeLow)
 #define ngx_file_fs_size(fi)ngx_file_size(fi)
 
-#define ngx_file_uniq(fi)   (*(ngx_file_uniq_t *) &(fi)->nFileIndexHigh)
+#define ngx_file_uniq(fi)\
+(((ngx_file_uniq_t) (fi)->nFileIndexHigh << 32) | (fi)->nFileIndexLow)
 
 
 /* 1164447360 is commented in src/os/win32/ngx_time.c */
___
nginx-devel mailing list
nginx-devel@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-devel