]> git.kaiwu.me - nginx.git/commitdiff
fix r2378, do not activate subrequest if there are already
authorIgor Sysoev <igor@sysoev.ru>
Tue, 23 Dec 2008 17:25:46 +0000 (17:25 +0000)
committerIgor Sysoev <igor@sysoev.ru>
Tue, 23 Dec 2008 17:25:46 +0000 (17:25 +0000)
postponed subrequests or data

src/http/ngx_http_core_module.c

index 6a72f31d5cf09b6bc99b280c8bd133366e9f91c9..458e4565a9032a6c670bd9f536d3d213844695b0 100644 (file)
@@ -2094,9 +2094,18 @@ ngx_http_subrequest(ngx_http_request_t *r,
     sr->write_event_handler = ngx_http_handler;
 
     if (c->data == r) {
+
+        for (pr = r->postponed; pr; pr = pr->next) {
+            if (pr->request) {
+                goto no_activate;
+            }
+        }
+
         c->data = sr;
     }
 
+no_activate:
+
     sr->in_addr = r->in_addr;
     sr->port = r->port;
     sr->port_text = r->port_text;