[master] 9371b61 Don't attempt IMS on zero-length objects

Poul-Henning Kamp phk at FreeBSD.org
Sat Mar 12 01:29:04 CET 2016


commit 9371b61d76ae1e653cd2168b827a0e104a0d968d
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Fri Mar 11 23:16:50 2016 +0000

    Don't attempt IMS on zero-length objects

diff --git a/bin/varnishd/cache/cache_fetch.c b/bin/varnishd/cache/cache_fetch.c
index a7dcc51..5c6084d 100644
--- a/bin/varnishd/cache/cache_fetch.c
+++ b/bin/varnishd/cache/cache_fetch.c
@@ -160,7 +160,7 @@ vbf_beresp2obj(struct busyobj *bo)
  */
 
 static enum fetch_step
-vbf_stp_mkbereq(const struct worker *wrk, struct busyobj *bo)
+vbf_stp_mkbereq(struct worker *wrk, struct busyobj *bo)
 {
 	const char *q;
 
@@ -187,7 +187,8 @@ vbf_stp_mkbereq(const struct worker *wrk, struct busyobj *bo)
 		AZ(bo->stale_oc);
 
 	if (bo->stale_oc != NULL &&
-	    ObjCheckFlag(bo->wrk, bo->stale_oc, OF_IMSCAND)) {
+	    ObjCheckFlag(bo->wrk, bo->stale_oc, OF_IMSCAND) &&
+	    (bo->stale_oc->boc != NULL || ObjGetLen(wrk, bo->stale_oc) != 0)) {
 		q = HTTP_GetHdrPack(bo->wrk, bo->stale_oc, H_Last_Modified);
 		if (q != NULL)
 			http_PrintfHeader(bo->bereq0,



More information about the varnish-commit mailing list