File 10860.patch of Package squid-beta

---------------------
PatchSet 10860 
Date: 2007/06/19 21:19:04
Author: rousskov
Branch: HEAD
Tag: (none) 
Log:
The last http.cc commit message is missing the following important change:

HttpStateData may get stuck if request body producer aborts while the
request body is being sent. The code already had a related XXX comment.
This change is meant to abort the server transaction when that happens,
but I cannot reproduce the problem and, hence, is not sure the change is
correct and sufficient.

When handling request body producer abort, create an error before
terminating the server transaction because FwdState asserts there is an
error. Unfortunately, we do not know why the body was aborted and have
to guess. The response is probably irrelevant if it was the HTTP client
that aborted the request. Thus, we are using ICAP_ERROR in hope that all
other cases are ICAP-related. If there are exceptions, we may confuse
admins and developers.

Merged from the squid3-icap branch.

Members: 
	src/http.cc:1.525->1.526 

Index: squid3/src/http.cc
===================================================================
RCS file: /cvsroot/squid/squid3/src/http.cc,v
retrieving revision 1.525
retrieving revision 1.526
diff -u -r1.525 -r1.526
--- squid3/src/http.cc	19 Jun 2007 20:27:00 -0000	1.525
+++ squid3/src/http.cc	19 Jun 2007 21:19:04 -0000	1.526
@@ -1,6 +1,6 @@
 
 /*
- * $Id: http.cc,v 1.525 2007/06/19 20:27:00 rousskov Exp $
+ * $Id: http.cc,v 1.526 2007/06/19 21:19:04 rousskov Exp $
  *
  * DEBUG: section 11    Hypertext Transfer Protocol (HTTP)
  * AUTHOR: Harvest Derived
@@ -1938,7 +1938,7 @@
     if (fd >= 0) {
         comm_close(fd);
         return;
-	}
+    }
 
     fwd->handleUnregisteredServerEnd();
     delete this;