Index: store_swapout.c
===================================================================
RCS file: /server/cvs-server/squid/squid/src/store_swapout.c,v
retrieving revision 1.94
diff -u -r1.94 store_swapout.c
--- store_swapout.c	2 Jun 2006 00:07:40 -0000	1.94
+++ store_swapout.c	7 Aug 2006 09:39:16 -0000
@@ -243,8 +243,13 @@
 	assert(mem->inmem_lo == 0);
 	if (storeCheckCachable(e))
 	    storeSwapOutStart(e);
-	else
+	else {
+	    /* Now that we know the data is not cachable, free the memory
+	     * to make sure the forwarding code does not defer the connection
+	     */
+	    storeSwapOutMaintainMemObject(e);
 	    return;
+	}
 	/* ENTRY_CACHABLE will be cleared and we'll never get here again */
     }
     if (NULL == mem->swapout.sio)
