summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2007-07-05 11:36:16 +0000
committerIgor Sysoev <igor@sysoev.ru>2007-07-05 11:36:16 +0000
commitd79ae709ab7de1863aacd62fb967a059311cfb47 (patch)
tree24b9c9da85305572802f78f4ce6c64809e25d3aa /src
parent964b4bda466e5d2750dd4e9c14de9aa9d09cda5d (diff)
downloadnginx-d79ae709ab7de1863aacd62fb967a059311cfb47.tar.gz
nginx-d79ae709ab7de1863aacd62fb967a059311cfb47.tar.bz2
r1262 merge:
if a subrequest was finished and SSI was in middle of SSI command parsing and the command was a fast subrequest then the second subrequest output was just after first subrequest output and response part of main request between the subrequests went after the second subrequest.
Diffstat (limited to 'src')
-rw-r--r--src/http/modules/ngx_http_ssi_filter_module.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/http/modules/ngx_http_ssi_filter_module.c b/src/http/modules/ngx_http_ssi_filter_module.c
index 5343ca0be..549ae4ce2 100644
--- a/src/http/modules/ngx_http_ssi_filter_module.c
+++ b/src/http/modules/ngx_http_ssi_filter_module.c
@@ -800,8 +800,14 @@ ngx_http_ssi_body_filter(ngx_http_request_t *r, ngx_chain_t *in)
}
}
- if (cmd->flush && ctx->out) {
- rc = ngx_http_ssi_output(r, ctx);
+ if (cmd->flush) {
+
+ if (ctx->out) {
+ rc = ngx_http_ssi_output(r, ctx);
+
+ } else {
+ rc = ngx_http_next_body_filter(r, NULL);
+ }
if (rc == NGX_ERROR) {
return NGX_ERROR;