From: Igor Sysoev Date: Mon, 26 Jan 2004 17:22:04 +0000 (+0000) Subject: nginx-0.0.1-2004-01-26-20:22:04 import X-Git-Tag: release-0.1.0~210 X-Git-Url: http://git.kaiwu.me/%7Bsubstring-before(@doc,%20'.xml')%7D.html?a=commitdiff_plain;h=f0d7ac8a2c60aaaa1ddcd06f0d4c598937096177;p=nginx.git nginx-0.0.1-2004-01-26-20:22:04 import --- diff --git a/src/http/modules/ngx_http_ssi_filter.c b/src/http/modules/ngx_http_ssi_filter.c index 78bf60826..13c11f0ce 100644 --- a/src/http/modules/ngx_http_ssi_filter.c +++ b/src/http/modules/ngx_http_ssi_filter.c @@ -194,10 +194,6 @@ static int ngx_http_ssi_body_filter(ngx_http_request_t *r, ngx_chain_t *in) ctx->prev = 0; } - if (ctx->pos == ctx->buf->last) { - ctx->prev = ctx->buf->last - ctx->last; - } - if (!(hunk = ngx_calloc_hunk(r->pool))) { return NGX_ERROR; } @@ -212,6 +208,10 @@ static int ngx_http_ssi_body_filter(ngx_http_request_t *r, ngx_chain_t *in) *ctx->last_out = cl; ctx->last_out = &cl->next; + if (ctx->pos == ctx->buf->last) { + ctx->prev = ctx->buf->last - ctx->last; + } + continue; #if 0 @@ -236,6 +236,8 @@ static int ngx_http_ssi_body_filter(ngx_http_request_t *r, ngx_chain_t *in) ctx->last_out = &cl->next; } } + + ctx->buf = NULL; } if (ctx->out) { @@ -256,6 +258,7 @@ static int ngx_http_ssi_body_filter(ngx_http_request_t *r, ngx_chain_t *in) } ctx->out = NULL; + ctx->last_out = &ctx->out; while (ctx->busy) { if (ngx_hunk_size(ctx->busy->hunk) != 0) {