]> git.kaiwu.me - nginx.git/commitdiff
included file name must be allocated in pool,
authorIgor Sysoev <igor@sysoev.ru>
Mon, 3 Mar 2008 17:12:05 +0000 (17:12 +0000)
committerIgor Sysoev <igor@sysoev.ru>
Mon, 3 Mar 2008 17:12:05 +0000 (17:12 +0000)
because it may be used in error message later

src/core/ngx_conf_file.c

index f00cf019b8d9c6a756b39a8043b0fca7b0f3a8c1..54769fbe00a26616b4e819b5662a8dee2a77774f 100644 (file)
@@ -633,7 +633,7 @@ ngx_conf_include(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
 {
     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_command_t *cmd, void *conf)
     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);