aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2009-05-04 19:04:00 +0000
committerIgor Sysoev <igor@sysoev.ru>2009-05-04 19:04:00 +0000
commit63d0bea178090e898a1b70eaf83cd26bd7586ce2 (patch)
tree29687c14d18fef5927dffeb2fb68190f878d6655 /src
parentfd5db1eb626ada5b892a29ea2de259bd7c7c1485 (diff)
downloadnginx-63d0bea178090e898a1b70eaf83cd26bd7586ce2.tar.gz
nginx-63d0bea178090e898a1b70eaf83cd26bd7586ce2.zip
do not free buffer with cache header before it would be written,
it seems this affected header only FastCGI responses only: proxied header only responses were cached right
Diffstat (limited to 'src')
-rw-r--r--src/event/ngx_event_pipe.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/event/ngx_event_pipe.c b/src/event/ngx_event_pipe.c
index c13d2ea5a..5d5035ce2 100644
--- a/src/event/ngx_event_pipe.c
+++ b/src/event/ngx_event_pipe.c
@@ -397,7 +397,7 @@ ngx_event_pipe_read_upstream(ngx_event_pipe_t *p)
p->free_raw_bufs = p->free_raw_bufs->next;
- if (p->free_bufs) {
+ if (p->free_bufs && p->buf_to_file == NULL) {
for (cl = p->free_raw_bufs; cl; cl = cl->next) {
if (cl->buf->shadow == NULL) {
ngx_pfree(p->pool, cl->buf->start);