diff src/http/ngx_http_core_module.c @ 4827:6e46016ea276

Fixed the "include" directive. The "include" directive should be able to include multiple files if given a filename mask. Fixed this to work for "include" directives inside the "map" or "types" blocks. The "include" directive inside the "geo" block is still not fixed.
author Ruslan Ermilov <ru@nginx.com>
date Tue, 28 Aug 2012 13:31:01 +0000
parents b07931054bf1
children f57154322e0e
line wrap: on
line diff
--- a/src/http/ngx_http_core_module.c
+++ b/src/http/ngx_http_core_module.c
@@ -3236,7 +3236,7 @@ ngx_http_core_type(ngx_conf_t *cf, ngx_c
 {
     ngx_http_core_loc_conf_t *clcf = conf;
 
-    ngx_str_t       *value, *content_type, *old, file;
+    ngx_str_t       *value, *content_type, *old;
     ngx_uint_t       i, n, hash;
     ngx_hash_key_t  *type;
 
@@ -3249,15 +3249,8 @@ ngx_http_core_type(ngx_conf_t *cf, ngx_c
                                " in \"include\" directive");
             return NGX_CONF_ERROR;
         }
-        file = value[1];
-
-        if (ngx_conf_full_name(cf->cycle, &file, 1) != NGX_OK) {
-            return NGX_CONF_ERROR;
-        }
-
-        ngx_log_debug1(NGX_LOG_DEBUG_CORE, cf->log, 0, "include %s", file.data);
-
-        return ngx_conf_parse(cf, &file);
+
+        return ngx_conf_include(cf, dummy, conf);
     }
 
     content_type = ngx_palloc(cf->pool, sizeof(ngx_str_t));