mirror of
				https://github.com/openresty/openresty.git
				synced 2024-10-13 00:29:41 +00:00 
			
		
		
		
	added patches for nginx 1.0.11.
This commit is contained in:
		
							
								
								
									
										73
									
								
								patches/nginx-1.0.11-variable_header_ignore_no_hash.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										73
									
								
								patches/nginx-1.0.11-variable_header_ignore_no_hash.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,73 @@ | ||||
| --- nginx-1.0.11/src/http/ngx_http_variables.c	2011-05-30 20:36:17.000000000 +0800 | ||||
| +++ nginx-1.0.11-patched/src/http/ngx_http_variables.c	2011-11-08 22:21:55.229247198 +0800 | ||||
| @@ -648,7 +648,17 @@ | ||||
|   | ||||
|      a = (ngx_array_t *) ((char *) r + data); | ||||
|   | ||||
| -    n = a->nelts; | ||||
| +    h = a->elts; | ||||
| +    n = 0; | ||||
| + | ||||
| +    for (i = 0; i < a->nelts; i++) { | ||||
| + | ||||
| +        if (h[i]->hash == 0) { | ||||
| +            continue; | ||||
| +        } | ||||
| + | ||||
| +        n++; | ||||
| +    } | ||||
|   | ||||
|      if (n == 0) { | ||||
|          v->not_found = 1; | ||||
| @@ -659,9 +669,7 @@ | ||||
|      v->no_cacheable = 0; | ||||
|      v->not_found = 0; | ||||
|   | ||||
| -    h = a->elts; | ||||
| - | ||||
| -    if (n == 1) { | ||||
| +    if (n == 1 && a->nelts == 1) { | ||||
|          v->len = (*h)->value.len; | ||||
|          v->data = (*h)->value.data; | ||||
|   | ||||
| @@ -670,7 +678,12 @@ | ||||
|   | ||||
|      len = - (ssize_t) (sizeof("; ") - 1); | ||||
|   | ||||
| -    for (i = 0; i < n; i++) { | ||||
| +    for (i = 0; i < a->nelts; i++) { | ||||
| + | ||||
| +        if (h[i]->hash == 0) { | ||||
| +            continue; | ||||
| +        } | ||||
| + | ||||
|          len += h[i]->value.len + sizeof("; ") - 1; | ||||
|      } | ||||
|   | ||||
| @@ -683,9 +696,14 @@ | ||||
|      v->data = p; | ||||
|   | ||||
|      for (i = 0; /* void */ ; i++) { | ||||
| + | ||||
| +        if (h[i]->hash == 0) { | ||||
| +            continue; | ||||
| +        } | ||||
| + | ||||
|          p = ngx_copy(p, h[i]->value.data, h[i]->value.len); | ||||
|   | ||||
| -        if (i == n - 1) { | ||||
| +        if (--n == 0) { | ||||
|              break; | ||||
|          } | ||||
|   | ||||
| @@ -738,6 +756,10 @@ | ||||
|              i = 0; | ||||
|          } | ||||
|   | ||||
| +        if (header[i].hash == 0) { | ||||
| +            continue; | ||||
| +        } | ||||
| + | ||||
|          for (n = 0; n + prefix < var->len && n < header[i].key.len; n++) { | ||||
|              ch = header[i].key.data[n]; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user