Mercurial > hg > nginx
comparison src/core/ngx_file.c @ 5967:863d9de1e62b
Core: supported directory skipping in ngx_walk_tree().
If pre_tree_handler() returns NGX_DECLINED, the directory is ignored.
author | Roman Arutyunyan <arut@nginx.com> |
---|---|
date | Mon, 02 Feb 2015 19:38:32 +0300 |
parents | a9138c35120d |
children | 3281de8142f5 |
comparison
equal
deleted
inserted
replaced
5966:bcdfc39bf44d | 5967:863d9de1e62b |
---|---|
1045 "tree enter dir \"%s\"", file.data); | 1045 "tree enter dir \"%s\"", file.data); |
1046 | 1046 |
1047 ctx->access = ngx_de_access(&dir); | 1047 ctx->access = ngx_de_access(&dir); |
1048 ctx->mtime = ngx_de_mtime(&dir); | 1048 ctx->mtime = ngx_de_mtime(&dir); |
1049 | 1049 |
1050 if (ctx->pre_tree_handler(ctx, &file) == NGX_ABORT) { | 1050 rc = ctx->pre_tree_handler(ctx, &file); |
1051 | |
1052 if (rc == NGX_ABORT) { | |
1051 goto failed; | 1053 goto failed; |
1054 } | |
1055 | |
1056 if (rc == NGX_DECLINED) { | |
1057 ngx_log_debug1(NGX_LOG_DEBUG_CORE, ctx->log, 0, | |
1058 "tree skip dir \"%s\"", file.data); | |
1059 continue; | |
1052 } | 1060 } |
1053 | 1061 |
1054 if (ngx_walk_tree(ctx, &file) == NGX_ABORT) { | 1062 if (ngx_walk_tree(ctx, &file) == NGX_ABORT) { |
1055 goto failed; | 1063 goto failed; |
1056 } | 1064 } |