diff -urN squid-2.5.STABLE12/src/http.c squid-2.5.STABLE12-squidgrowthfix/src/http.c --- squid-2.5.STABLE12/src/http.c 2006-01-05 16:26:37.000000000 +0000 +++ squid-2.5.STABLE12-squidgrowthfix/src/http.c 2006-01-05 16:53:30.000000000 +0000 @@ -629,6 +629,10 @@ commSetSelect(fd, COMM_SELECT_READ, httpReadReply, httpState, 0); return; } + + if(icap->flags.no_content == 1) { + commSetDefer(fd, fwdCheckDeferRead, icap->respmod.entry); + } } #endif diff -urN squid-2.5.STABLE12/src/icap_respmod.c squid-2.5.STABLE12-squidgrowthfix/src/icap_respmod.c --- squid-2.5.STABLE12/src/icap_respmod.c 2006-01-05 16:26:37.000000000 +0000 +++ squid-2.5.STABLE12-squidgrowthfix/src/icap_respmod.c 2006-01-05 16:53:59.000000000 +0000 @@ -627,6 +627,7 @@ commSetSelect(fd, COMM_SELECT_READ, icapRespModReadReply, icap, 0); #if 1 commSetTimeout(fd, Config.Timeout.read, icapReadTimeout, icap); + commSetDefer(fd, fwdCheckDeferRead, icap->respmod.entry); #else if (icap->flags.wait_for_preview_reply || icap->flags.http_server_eof) { /*