Mercurial > hg > nginx
comparison src/core/ngx_output_chain.c @ 403:ea3113b181d1
nginx-0.0.9-2004-07-28-23:21:26 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 28 Jul 2004 19:21:26 +0000 |
parents | f209f3391020 |
children | d6e2b445c1b8 |
comparison
equal
deleted
inserted
replaced
402:f209f3391020 | 403:ea3113b181d1 |
---|---|
57 /* | 57 /* |
58 * cycle while there are the ctx->in bufs | 58 * cycle while there are the ctx->in bufs |
59 * or there are the free output bufs to copy in | 59 * or there are the free output bufs to copy in |
60 */ | 60 */ |
61 | 61 |
62 bsize = ngx_buf_size(ctx->in->buf); | |
63 | |
64 if (bsize == 0 && !ngx_buf_special(ctx->in->buf)) { | |
65 | |
66 ngx_log_error(NGX_LOG_ALERT, ctx->pool->log, 0, | |
67 "zero size buf"); | |
68 | |
69 ctx->in = ctx->in->next; | |
70 continue; | |
71 } | |
72 | |
62 if (!ngx_output_chain_need_to_copy(ctx, ctx->in->buf)) { | 73 if (!ngx_output_chain_need_to_copy(ctx, ctx->in->buf)) { |
63 | 74 |
64 /* move the chain link to the output chain */ | 75 /* move the chain link to the output chain */ |
65 | 76 |
66 cl = ctx->in; | 77 cl = ctx->in; |
68 | 79 |
69 *last_out = cl; | 80 *last_out = cl; |
70 last_out = &cl->next; | 81 last_out = &cl->next; |
71 cl->next = NULL; | 82 cl->next = NULL; |
72 | 83 |
73 continue; | |
74 } | |
75 | |
76 bsize = ngx_buf_size(ctx->in->buf); | |
77 | |
78 if (bsize == 0) { | |
79 ctx->in = ctx->in->next; | |
80 continue; | 84 continue; |
81 } | 85 } |
82 | 86 |
83 if (ctx->buf == NULL) { | 87 if (ctx->buf == NULL) { |
84 | 88 |