changeset 1261:58691d40829f

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.
author Igor Sysoev <igor@sysoev.ru>
date Sun, 17 Jun 2007 18:10:43 +0000
parents c3541b8973de
children 7ac0fe9bec9a
files src/http/modules/ngx_http_ssi_filter_module.c
diffstat 1 files changed, 8 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- 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_reques
                     }
                 }
 
-                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;