Mercurial > hg > nginx
comparison src/http/modules/ngx_http_proxy_module.c @ 3605:ef078f482a89
fix rewritten Refresh header length
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 07 Jun 2010 14:33:50 +0000 |
parents | 20708cffd6dc |
children | 39535a91776d |
comparison
equal
deleted
inserted
replaced
3604:3a64bdacf1e4 | 3605:ef078f482a89 |
---|---|
1763 pr->redirect.len) != 0) | 1763 pr->redirect.len) != 0) |
1764 { | 1764 { |
1765 return NGX_DECLINED; | 1765 return NGX_DECLINED; |
1766 } | 1766 } |
1767 | 1767 |
1768 len = prefix + pr->replacement.text.len + h->value.len - pr->redirect.len; | 1768 len = pr->replacement.text.len + h->value.len - pr->redirect.len; |
1769 | 1769 |
1770 data = ngx_pnalloc(r->pool, len); | 1770 data = ngx_pnalloc(r->pool, len); |
1771 if (data == NULL) { | 1771 if (data == NULL) { |
1772 return NGX_ERROR; | 1772 return NGX_ERROR; |
1773 } | 1773 } |
1810 ngx_memzero(&e, sizeof(ngx_http_script_engine_t)); | 1810 ngx_memzero(&e, sizeof(ngx_http_script_engine_t)); |
1811 | 1811 |
1812 e.ip = pr->replacement.vars.lengths; | 1812 e.ip = pr->replacement.vars.lengths; |
1813 e.request = r; | 1813 e.request = r; |
1814 | 1814 |
1815 len = prefix + h->value.len - pr->redirect.len; | 1815 len = h->value.len - pr->redirect.len; |
1816 | 1816 |
1817 while (*(uintptr_t *) e.ip) { | 1817 while (*(uintptr_t *) e.ip) { |
1818 lcode = *(ngx_http_script_len_code_pt *) e.ip; | 1818 lcode = *(ngx_http_script_len_code_pt *) e.ip; |
1819 len += lcode(&e); | 1819 len += lcode(&e); |
1820 } | 1820 } |