From 97c0d3503793e3ddbdae8eea05899245dd8676fe Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Thu, 18 Jan 2007 07:07:55 +0000 Subject: [PATCH] fix FastCGI "zero size buf" alert, the previous commit did not fix too --- src/event/ngx_event_pipe.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/event/ngx_event_pipe.c b/src/event/ngx_event_pipe.c index 0809f9bae..a22cdcc0c 100644 --- a/src/event/ngx_event_pipe.c +++ b/src/event/ngx_event_pipe.c @@ -518,19 +518,12 @@ ngx_event_pipe_write_to_downstream(ngx_event_pipe_t *p) cl = p->out; if (cl->buf->recycled - && cl->buf->last_shadow && bsize + cl->buf->last - cl->buf->pos > p->busy_size) { - if (!prev_last_shadow) { - p->in = p->in->next; - } - flush = 1; break; } - prev_last_shadow = cl->buf->last_shadow; - p->out = p->out->next; ngx_event_pipe_free_shadow_raw_buf(&p->free_raw_bufs, cl->buf); @@ -550,6 +543,15 @@ ngx_event_pipe_write_to_downstream(ngx_event_pipe_t *p) { if (!prev_last_shadow) { p->in = p->in->next; + + cl->next = NULL; + + if (out) { + *ll = cl; + } else { + out = cl; + } + ll = &cl->next; } flush = 1;