From f953436886ad8def8eda55d0693f609d8a8b5a89 Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Wed, 3 Mar 2010 10:05:54 +0000 Subject: compare long file names in case-insensitive mode, the bug had been introduced in r3418 --- src/os/win32/ngx_files.c | 2 +- src/os/win32/ngx_win32_config.h | 1 + src/os/win32/ngx_win32_init.c | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/os/win32/ngx_files.c b/src/os/win32/ngx_files.c index 518da5a50..a6350ce97 100644 --- a/src/os/win32/ngx_files.c +++ b/src/os/win32/ngx_files.c @@ -48,7 +48,7 @@ ngx_open_file(u_char *name, u_long mode, u_long create, u_long access) goto failed; } - if (n != len - 1 || ngx_memcmp(u, lu, n) != 0) { + if (n != len - 1 || _wcsicmp(u, lu) != 0) { ngx_set_errno(NGX_ENOENT); goto failed; } diff --git a/src/os/win32/ngx_win32_config.h b/src/os/win32/ngx_win32_config.h index d35b448ba..0dcba98cf 100644 --- a/src/os/win32/ngx_win32_config.h +++ b/src/os/win32/ngx_win32_config.h @@ -36,6 +36,7 @@ #include #include #include +#include #ifdef __WATCOMC__ #define _TIME_T_DEFINED diff --git a/src/os/win32/ngx_win32_init.c b/src/os/win32/ngx_win32_init.c index 0924c3c70..3b22358aa 100644 --- a/src/os/win32/ngx_win32_init.c +++ b/src/os/win32/ngx_win32_init.c @@ -114,6 +114,9 @@ ngx_os_init(ngx_log_t *log) for (n = ngx_pagesize; n >>= 1; ngx_pagesize_shift++) { /* void */ } + /* delete default "C" locale for _wcsicmp() */ + setlocale(LC_ALL, ""); + /* init Winsock */ -- cgit