has closed the connection on us.
Fixes #427
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@3547
d4fa192b-c00b-0410-8231-
f00ffab90ce4
sp->esis--;
sp->obj = obj;
WRW_Reserve(sp->wrk, &sp->fd);
+ if (sp->fd < 0)
+ break;
}
if (sp->esis == 0 && sp->http->protover >= 1.1)
(void)WRW_Write(sp->wrk, "0\r\n\r\n", -1);
--- /dev/null
+# $Id$
+
+test "client close in ESI delivery"
+
+server s1 {
+ rxreq
+ txresp -body {
+ <esi:include src="/foo">
+ <esi:include src="/bar">
+ <esi:include src="/barf">
+ }
+
+ rxreq
+ expect req.url == "/foo"
+ sema r1 sync 2
+ sema r1 sync 2
+ txresp -body "[foo]"
+
+ rxreq
+ expect req.url == "/bar"
+ txresp -body "[bar]"
+
+ rxreq
+ expect req.url == "/barf"
+ txresp -body "[barf]"
+} -start
+
+varnish v1 -vcl+backend {
+ sub vcl_fetch {
+ esi;
+ }
+} -start
+
+client c1 {
+ txreq
+ sema r1 sync 2
+} -run
+
+client c1 {
+ sema r1 sync 2
+ txreq
+ rxresp
+} -run