Mercurial > hg > nginx-vendor-current
comparison src/http/modules/ngx_http_ssi_filter_module.c @ 246:b52bd034c577 NGINX_0_4_8
nginx 0.4.8
*) Bugfix: if an "include" SSI command were before another "include"
SSI command with an "wait" parameter, then the "wait" parameter
might not work.
*) Bugfix: the ngx_http_flv_module added the FLV header to the full
responses.
Thanks to Alexey Kovyrin.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Wed, 11 Oct 2006 00:00:00 +0400 |
parents | 500a3242dff6 |
children | acd2ec3541cb |
comparison
equal
deleted
inserted
replaced
245:d75dbd68f5b2 | 246:b52bd034c577 |
---|---|
381 ngx_buf_t *b; | 381 ngx_buf_t *b; |
382 ngx_uint_t i, index; | 382 ngx_uint_t i, index; |
383 ngx_chain_t *cl, **ll; | 383 ngx_chain_t *cl, **ll; |
384 ngx_table_elt_t *param; | 384 ngx_table_elt_t *param; |
385 ngx_connection_t *c; | 385 ngx_connection_t *c; |
386 ngx_http_request_t *pr; | |
386 ngx_http_ssi_ctx_t *ctx, *mctx; | 387 ngx_http_ssi_ctx_t *ctx, *mctx; |
387 ngx_http_ssi_block_t *bl; | 388 ngx_http_ssi_block_t *bl; |
388 ngx_http_ssi_param_t *prm; | 389 ngx_http_ssi_param_t *prm; |
389 ngx_http_ssi_command_t *cmd; | 390 ngx_http_ssi_command_t *cmd; |
390 ngx_http_ssi_loc_conf_t *slcf; | 391 ngx_http_ssi_loc_conf_t *slcf; |
413 if (ctx->wait) { | 414 if (ctx->wait) { |
414 if (r->connection->data != r) { | 415 if (r->connection->data != r) { |
415 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, | 416 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, |
416 "http ssi filter \"%V\" wait", &r->uri); | 417 "http ssi filter \"%V\" wait", &r->uri); |
417 return NGX_AGAIN; | 418 return NGX_AGAIN; |
419 } | |
420 | |
421 for (pr = ctx->wait->parent; pr; pr = pr->parent) { | |
422 if (pr == r) { | |
423 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, | |
424 "http ssi filter \"%V\" flush", &r->uri); | |
425 | |
426 rc = ngx_http_next_body_filter(r, NULL); | |
427 | |
428 if (ctx->wait->done) { | |
429 ctx->wait = NULL; | |
430 } | |
431 | |
432 if (rc == NGX_ERROR || rc == NGX_AGAIN) { | |
433 return rc; | |
434 } | |
435 } | |
418 } | 436 } |
419 | 437 |
420 if (ctx->wait == r) { | 438 if (ctx->wait == r) { |
421 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, | 439 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, |
422 "http ssi filter \"%V\" continue", &r->uri); | 440 "http ssi filter \"%V\" continue", &r->uri); |