--------------------- PatchSet 1620 Date: 2005/08/26 23:27:05 Author: dwsquid Branch: squid3-icap Tag: (none) Log: Two call-ordering bugs; call cbdataReferenceDone() after delete, otherwise its delete NULL assert httpState->FD *before* freeing httpState Members: src/http.cc:1.49.2.19->1.49.2.20 Index: squid3/src/http.cc =================================================================== RCS file: /cvsroot/squid-sf//squid3/src/http.cc,v retrieving revision 1.49.2.19 retrieving revision 1.49.2.20 diff -u -r1.49.2.19 -r1.49.2.20 --- squid3/src/http.cc 26 Aug 2005 20:28:41 -0000 1.49.2.19 +++ squid3/src/http.cc 26 Aug 2005 23:27:05 -0000 1.49.2.20 @@ -1,6 +1,6 @@ /* - * $Id: http.cc,v 1.49.2.19 2005/08/26 20:28:41 dwsquid Exp $ + * $Id: http.cc,v 1.49.2.20 2005/08/26 23:27:05 dwsquid Exp $ * * DEBUG: section 11 Hypertext Transfer Protocol (HTTP) * AUTHOR: Harvest Derived @@ -109,8 +109,8 @@ httpState->orig_request = NULL; #if ICAP_CLIENT - cbdataReferenceDone(httpState->icap); delete httpState->icap; + cbdataReferenceDone(httpState->icap); #endif cbdataFree(httpState); @@ -2101,8 +2101,8 @@ } fwdComplete(fwd); - httpStateFree(-1, this); assert(fd == -1); + httpStateFree(-1, this); } void