changeset 3202:121fae8c673c

ignore EACCES errors for top level directories in ngx_create_full_path()
author Igor Sysoev <igor@sysoev.ru>
date Wed, 14 Oct 2009 11:46:09 +0000
parents 5fae6f9085e1
children a56cccd588e6
files src/core/ngx_file.c
diffstat 1 files changed, 11 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/core/ngx_file.c
+++ b/src/core/ngx_file.c
@@ -183,6 +183,8 @@ ngx_create_full_path(u_char *dir, ngx_ui
     u_char     *p, ch;
     ngx_err_t   err;
 
+    err = 0;
+
 #if (NGX_WIN32)
     p = dir + 3;
 #else
@@ -200,7 +202,14 @@ ngx_create_full_path(u_char *dir, ngx_ui
 
         if (ngx_create_dir(dir, access) == NGX_FILE_ERROR) {
             err = ngx_errno;
-            if (err != NGX_EEXIST) {
+
+            switch (err) {
+            case NGX_EEXIST:
+                err = 0;
+            case NGX_EACCES:
+                break;
+
+            default:
                 return err;
             }
         }
@@ -208,7 +217,7 @@ ngx_create_full_path(u_char *dir, ngx_ui
         *p = '/';
     }
 
-    return 0;
+    return err;
 }