do not store an encoded variable value as a new cached variable value
Igor Sysoev
12 years ago
2160 | 2160 | } |
2161 | 2161 | } |
2162 | 2162 | |
2163 | p = value->data; | |
2164 | ||
2163 | 2165 | switch (ctx->encoding) { |
2164 | ||
2165 | case NGX_HTTP_SSI_NO_ENCODING: | |
2166 | break; | |
2167 | 2166 | |
2168 | 2167 | case NGX_HTTP_SSI_URL_ENCODING: |
2169 | 2168 | len = 2 * ngx_escape_uri(NULL, value->data, value->len, |
2176 | 2175 | } |
2177 | 2176 | |
2178 | 2177 | (void) ngx_escape_uri(p, value->data, value->len, NGX_ESCAPE_HTML); |
2179 | ||
2180 | value->len += len; | |
2181 | value->data = p; | |
2182 | } | |
2183 | ||
2178 | } | |
2179 | ||
2180 | len += value->len; | |
2184 | 2181 | break; |
2185 | 2182 | |
2186 | 2183 | case NGX_HTTP_SSI_ENTITY_ENCODING: |
2193 | 2190 | } |
2194 | 2191 | |
2195 | 2192 | (void) ngx_escape_html(p, value->data, value->len); |
2196 | ||
2197 | value->len += len; | |
2198 | value->data = p; | |
2199 | } | |
2200 | ||
2193 | } | |
2194 | ||
2195 | len += value->len; | |
2196 | break; | |
2197 | ||
2198 | default: /* NGX_HTTP_SSI_NO_ENCODING */ | |
2199 | len = value->len; | |
2201 | 2200 | break; |
2202 | 2201 | } |
2203 | 2202 | |
2212 | 2211 | } |
2213 | 2212 | |
2214 | 2213 | b->memory = 1; |
2215 | b->pos = value->data; | |
2216 | b->last = value->data + value->len; | |
2214 | b->pos = p; | |
2215 | b->last = p + len; | |
2217 | 2216 | |
2218 | 2217 | cl->buf = b; |
2219 | 2218 | cl->next = NULL; |