Commit 57941abf authored by Federico G. Schwindt's avatar Federico G. Schwindt Committed by Dridi Boukelmoune

Permit subsequent conditional requests on 304

Fixes #2871.
parent e03d6c43
...@@ -714,7 +714,8 @@ vbf_stp_condfetch(struct worker *wrk, struct busyobj *bo) ...@@ -714,7 +714,8 @@ vbf_stp_condfetch(struct worker *wrk, struct busyobj *bo)
OA_ESIDATA)); OA_ESIDATA));
AZ(ObjCopyAttr(bo->wrk, bo->fetch_objcore, bo->stale_oc, OA_FLAGS)); AZ(ObjCopyAttr(bo->wrk, bo->fetch_objcore, bo->stale_oc, OA_FLAGS));
ObjSetFlag(bo->wrk, bo->fetch_objcore, OF_IMSCAND, 0); if (bo->fetch_objcore->flags & OC_F_HFM)
ObjSetFlag(bo->wrk, bo->fetch_objcore, OF_IMSCAND, 0);
AZ(ObjCopyAttr(bo->wrk, bo->fetch_objcore, bo->stale_oc, OA_GZIPBITS)); AZ(ObjCopyAttr(bo->wrk, bo->fetch_objcore, bo->stale_oc, OA_GZIPBITS));
if (bo->do_stream) { if (bo->do_stream) {
......
...@@ -6,6 +6,9 @@ server s1 { ...@@ -6,6 +6,9 @@ server s1 {
rxreq rxreq
expect req.http.if-modified-since == "Wed, 11 Sep 2013 13:36:55 GMT" expect req.http.if-modified-since == "Wed, 11 Sep 2013 13:36:55 GMT"
txresp -status 304 txresp -status 304
rxreq
expect req.http.if-modified-since == "Wed, 11 Sep 2013 13:36:55 GMT"
txresp -status 304
} -start } -start
varnish v1 -vcl+backend { varnish v1 -vcl+backend {
...@@ -44,3 +47,13 @@ client c1 { ...@@ -44,3 +47,13 @@ client c1 {
expect resp.body == "Geoff Rules" expect resp.body == "Geoff Rules"
expect resp.http.was-304 == "true" expect resp.http.was-304 == "true"
} -run } -run
delay 1
client c1 {
txreq
rxresp
expect resp.status == 200
expect resp.body == "Geoff Rules"
expect resp.http.was-304 == "true"
} -run
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