diff -urN squid-2.5.STABLE12/src/icap_respmod.c squid-2.5.STABLE12-http0.9fix/src/icap_respmod.c --- squid-2.5.STABLE12/src/icap_respmod.c 2006-01-05 16:26:37.000000000 +0000 +++ squid-2.5.STABLE12-http0.9fix/src/icap_respmod.c 2006-01-05 16:51:08.000000000 +0000 @@ -104,6 +104,9 @@ consumed = -1; o2 = -1; memBufDefInit(&mb_hdr); + httpBuildRequestPrefix(icap->request, icap->request, + icap->respmod.entry, &mb_hdr, icap->http_flags); + o3 = mb_hdr.size; } else { hlen = headersEnd(icap->respmod.req_hdr_copy.buf, @@ -132,12 +135,12 @@ httpBuildRequestPrefix(icap->request, icap->request, icap->respmod.entry, &mb_hdr, icap->http_flags); o2 = mb_hdr.size; - } - /* Copy response header - Append to request header mbuffer */ - memBufAppend(&mb_hdr, - icap->respmod.req_hdr_copy.buf, icap->respmod.req_hdr_copy.size); - o3 = mb_hdr.size; + /* Copy response header - Append to request header mbuffer */ + memBufAppend(&mb_hdr, + icap->respmod.req_hdr_copy.buf, icap->respmod.req_hdr_copy.size); + o3 = mb_hdr.size; + } service = icap->current_service; assert(service);