From 99e409a458aa6f31d4b04aadd548f25e884c5e26 Mon Sep 17 00:00:00 2001 From: phk Date: Wed, 23 Aug 2006 14:30:06 +0000 Subject: [PATCH] Handle backend failure in pass mode git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@909 d4fa192b-c00b-0410-8231-f00ffab90ce4 --- varnish-cache/bin/varnishd/cache_pass.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/varnish-cache/bin/varnishd/cache_pass.c b/varnish-cache/bin/varnishd/cache_pass.c index 17d5e44c..ead16da0 100644 --- a/varnish-cache/bin/varnishd/cache_pass.c +++ b/varnish-cache/bin/varnishd/cache_pass.c @@ -45,6 +45,10 @@ pass_straight(struct sess *sp, int fd, struct http *hp, char *bi) i = http_Read(hp, fd, buf, c); if (i == 0 && bi == NULL) return (1); + if (i <= 0) { + vca_close_session(sp, "backend closed"); + return (1); + } assert(i > 0); sp->wrk->acct.bodybytes += WRK_Write(sp->wrk, buf, i); if (WRK_Flush(sp->wrk)) -- 2.39.5