Mercurial > hg > nginx
changeset 2126:5e954395a15e
case insensitive file system location support provided by locale only
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 29 Jul 2008 16:55:11 +0000 |
parents | 8e4b9d2acde8 |
children | 05e8de8fcfbb |
files | src/http/ngx_http_core_module.c src/os/unix/ngx_files.h src/os/win32/ngx_files.h |
diffstat | 3 files changed, 16 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/ngx_http_core_module.c +++ b/src/http/ngx_http_core_module.c @@ -1204,7 +1204,7 @@ ngx_http_core_find_static_location(ngx_h n = (len <= (size_t) node->len) ? len : node->len; - rc = ngx_memcmp(uri, node->name, n); + rc = ngx_filename_cmp(uri, node->name, n); if (rc != 0) { node = (rc < 0) ? node->left : node->right;
--- a/src/os/unix/ngx_files.h +++ b/src/os/unix/ngx_files.h @@ -19,6 +19,8 @@ #ifdef __CYGWIN__ +#define NGX_HAVE_CASELESS_FILESYSTEM 1 + #define ngx_open_file(name, mode, create, access) \ open((const char *) name, mode|create|O_BINARY, access) @@ -103,6 +105,16 @@ ngx_int_t ngx_set_file_time(u_char *name #define ngx_file_uniq(sb) (sb)->st_ino +#if (NGX_HAVE_CASELESS_FILESYSTEM) + +#define ngx_filename_cmp(s1, s2, n) strncasecmp((char *) s1, (char *) s2, n) + +#else + +#define ngx_filename_cmp ngx_memcmp + +#endif + #define ngx_getcwd(buf, size) (getcwd(buf, size) != NULL) #define ngx_getcwd_n "getcwd()"
--- a/src/os/win32/ngx_files.h +++ b/src/os/win32/ngx_files.h @@ -123,6 +123,9 @@ ngx_int_t ngx_file_info(u_char *filename - 116444736000000000) / 10000000) +#define ngx_filename_cmp(s1, s2, n) strnicmp((char *) s1, (char *) s2, n) + + #define ngx_getcwd(buf, size) GetCurrentDirectory(size, buf) #define ngx_getcwd_n "GetCurrentDirectory()" #define NGX_MAX_PATH MAX_PATH