[master] 591dd5b Unbreak backend retries

Poul-Henning Kamp phk at FreeBSD.org
Mon Oct 13 14:46:12 CEST 2014


commit 591dd5b63b19e2b74a19b574a58e21f05ca2f3ba
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Mon Oct 13 12:45:51 2014 +0000

    Unbreak backend retries

diff --git a/bin/varnishd/cache/cache_backend.c b/bin/varnishd/cache/cache_backend.c
index d073e60..2e233e9 100644
--- a/bin/varnishd/cache/cache_backend.c
+++ b/bin/varnishd/cache/cache_backend.c
@@ -399,6 +399,7 @@ vbe_dir_gethdrs(const struct director *d, struct worker *wrk,
 		VSLb(bo->vsl, SLT_FetchError, "no backend connection");
 		return (-1);
 	}
+	AN(bo->htc);
 
 	i = V1F_fetch_hdr(wrk, bo);
 	/*
@@ -410,12 +411,13 @@ vbe_dir_gethdrs(const struct director *d, struct worker *wrk,
 		AZ(bo->htc);
 		VSC_C_main->backend_retry++;
 		bo->doclose = SC_NULL;
-		bo->htc->vbc = vbe_dir_getfd(d, bo);
-		if (bo->htc->vbc == NULL) {
+		vbc = vbe_dir_getfd(d, bo);
+		if (vbc == NULL) {
 			VSLb(bo->vsl, SLT_FetchError, "no backend connection");
 			bo->htc = NULL;
 			return (-1);
 		}
+		AN(bo->htc);
 		i = V1F_fetch_hdr(wrk, bo);
 	}
 	if (i != 0) {



More information about the varnish-commit mailing list