Commit 4c22d742 authored by Poul-Henning Kamp's avatar Poul-Henning Kamp

Count ESI processed objects in acct.bodybytes



git-svn-id: http://www.varnish-cache.org/svn/trunk/varnish-cache@3423 d4fa192b-c00b-0410-8231-f00ffab90ce4
parent ae30a30f
......@@ -800,12 +800,14 @@ ESI_Deliver(struct sess *sp)
struct object *obj;
VTAILQ_FOREACH(eb, &sp->obj->esibits, list) {
assert(sp->wrk->wfd = &sp->fd);
if (Tlen(eb->verbatim)) {
if (sp->http->protover >= 1.1)
WRK_Write(sp->wrk, eb->chunk_length, -1);
WRK_Write(sp->wrk, eb->verbatim.b, Tlen(eb->verbatim));
(void)WRK_Write(sp->wrk, eb->chunk_length, -1);
sp->wrk->acct.bodybytes += WRK_Write(sp->wrk,
eb->verbatim.b, Tlen(eb->verbatim));
if (sp->http->protover >= 1.1)
WRK_Write(sp->wrk, "\r\n", -1);
(void)WRK_Write(sp->wrk, "\r\n", -1);
}
if (eb->include.b == NULL ||
sp->esis >= params->max_esi_includes)
......@@ -814,9 +816,10 @@ ESI_Deliver(struct sess *sp)
/*
* We flush here, because the next transaction is
* quite likely to take some time, so we should get
* as many bits to the client as we can already
* as many bits to the client as we can already.
*/
WRK_Flush(sp->wrk);
if (WRK_Flush(sp->wrk))
break;
sp->esis++;
obj = sp->obj;
......@@ -852,8 +855,9 @@ ESI_Deliver(struct sess *sp)
sp->obj = obj;
}
assert(sp->wrk->wfd = &sp->fd);
if (sp->esis == 0 && sp->http->protover >= 1.1)
WRK_Write(sp->wrk, "0\r\n\r\n", -1);
(void)WRK_Write(sp->wrk, "0\r\n\r\n", -1);
}
/*--------------------------------------------------------------------*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment