included file name must be allocated in pool,
because it may be used in error message later
diff --git a/src/core/ngx_conf_file.c b/src/core/ngx_conf_file.c
index f00cf01..54769fb 100644
--- a/src/core/ngx_conf_file.c
+++ b/src/core/ngx_conf_file.c
@@ -633,7 +633,7 @@
 {
     char        *rv;
     ngx_int_t    n;
-    ngx_str_t   *value, file;
+    ngx_str_t   *value, file, name;
     ngx_glob_t   gl;
 
     value = cf->args->elts;
@@ -659,12 +659,15 @@
     rv = NGX_CONF_OK;
 
     for ( ;; ) {
-        n = ngx_read_glob(&gl, &file);
+        n = ngx_read_glob(&gl, &name);
 
         if (n != NGX_OK) {
             break;
         }
 
+        file.len = name.len++;
+        file.data = ngx_pstrdup(cf->pool, &name);
+
         ngx_log_debug1(NGX_LOG_DEBUG_CORE, cf->log, 0, "include %s", file.data);
 
         rv = ngx_conf_parse(cf, &file);