diff src/http/ngx_http_variables.c @ 635:18268abd340c release-0.3.39

nginx-0.3.39-RELEASE import *) Feature: the "uninitialized_variable_warn" directive; the logging level of the "uninitialized variable" message was lowered from "alert" to "warn". *) Feature: the "override_charset" directive. *) Change: now if the unknown variable is used in the "echo" and "if expr='$name'" SSI-commands, then the "unknown variable" message is not logged. *) Bugfix: the active connection counter increased on the exceeding of the connection limit specified by the "worker_connections" directive; the bug had appeared in 0.2.0. *) Bugfix: the limit rate might not work on some condition; the bug had appeared in 0.3.38.
author Igor Sysoev <igor@sysoev.ru>
date Mon, 17 Apr 2006 19:55:41 +0000
parents 65bf042c0b4f
children e60fe4cf1d4e
line wrap: on
line diff
--- a/src/http/ngx_http_variables.c
+++ b/src/http/ngx_http_variables.c
@@ -324,7 +324,8 @@ ngx_http_get_flushed_variable(ngx_http_r
 
 
 ngx_http_variable_value_t *
-ngx_http_get_variable(ngx_http_request_t *r, ngx_str_t *name, ngx_uint_t key)
+ngx_http_get_variable(ngx_http_request_t *r, ngx_str_t *name, ngx_uint_t key,
+    ngx_uint_t nowarn)
 {
     ngx_http_variable_t        *v;
     ngx_http_variable_value_t  *vv;
@@ -377,10 +378,12 @@ ngx_http_get_variable(ngx_http_request_t
         return NULL;
     }
 
-    ngx_log_error(NGX_LOG_ERR, r->connection->log, 0,
-                  "unknown \"%V\" variable", name);
+    vv->not_found = 1;
 
-    vv->not_found = 1;
+    if (nowarn == 0) {
+        ngx_log_error(NGX_LOG_ERR, r->connection->log, 0,
+                      "unknown \"%V\" variable", name);
+    }
 
     return vv;
 }