changeset 1911:ade85ba31674

included file name must be allocated in pool, because it may be used in error message later
author Igor Sysoev <igor@sysoev.ru>
date Mon, 03 Mar 2008 17:12:05 +0000
parents 8c64532e4875
children 68b426b43c31
files src/core/ngx_conf_file.c
diffstat 1 files changed, 5 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/core/ngx_conf_file.c
+++ b/src/core/ngx_conf_file.c
@@ -633,7 +633,7 @@ ngx_conf_include(ngx_conf_t *cf, ngx_com
 {
     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 @@ ngx_conf_include(ngx_conf_t *cf, ngx_com
     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);