Variables: honor no_cacheable for not_found variables.
Variables with the "not_found" flag set follow the same rules as ones with the "valid" flag set. Make sure ngx_http_get_flushed_variable() will flush non-cacheable variables with the "not_found" flag set. This fixes at least one known problem with $args not available in a subrequest (with args) when there were no args in the main request and $args variable was queried in the main request (reported by Laurence Rowe aka elro on irc). Also this eliminates unneeded call to ngx_http_get_indexed_variable() in cacheable case (as it will return cached value anyway).
This commit is contained in:
parent
ebef778394
commit
b80fae30f1
1 changed files with 1 additions and 1 deletions
|
@ -432,7 +432,7 @@ ngx_http_get_flushed_variable(ngx_http_request_t *r, ngx_uint_t index)
|
|||
|
||||
v = &r->variables[index];
|
||||
|
||||
if (v->valid) {
|
||||
if (v->valid || v->not_found) {
|
||||
if (!v->no_cacheable) {
|
||||
return v;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue