From 78c95de9dab2ec463c609bcca15f5aba8bb3e8e1 Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Fri, 6 Mar 2009 13:01:21 +0000 Subject: XFS on Linux does not set dirent.d_type, therefore fallback to stat() if dirent.d_type is not set, this fixes slash after directory name in ngx_http_autoindex_module; the issue has been introduced in r2235 --- src/os/unix/ngx_files.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'src/os/unix/ngx_files.c') diff --git a/src/os/unix/ngx_files.c b/src/os/unix/ngx_files.c index 661ecaa4e..1203989b6 100644 --- a/src/os/unix/ngx_files.c +++ b/src/os/unix/ngx_files.c @@ -249,11 +249,6 @@ ngx_open_dir(ngx_str_t *name, ngx_dir_t *dir) } dir->valid_info = 0; -#if (NGX_HAVE_D_TYPE) - dir->valid_type = 1; -#else - dir->valid_type = 0; -#endif return NGX_OK; } @@ -267,6 +262,9 @@ ngx_read_dir(ngx_dir_t *dir) if (dir->de) { #if (NGX_HAVE_D_TYPE) dir->type = dir->de->d_type; + dir->valid_type = dir->type ? 1 : 0; +#else + dir->valid_type = 0; #endif return NGX_OK; } -- cgit v1.2.3