From: robertc <> Date: Sat, 8 Mar 2003 23:18:45 +0000 (+0000) Subject: Summary: Fix bug #560. X-Git-Tag: SQUID_3_0_PRE1~274 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=744c68f50e81859ffb96b80cb6f4f844ad6c4275;p=thirdparty%2Fsquid.git Summary: Fix bug #560. Keywords: * Remove a newly introduced race in ConnectStateData::callCallback. --- diff --git a/src/comm.cc b/src/comm.cc index 3151e6eaee..ad5e207e0b 100644 --- a/src/comm.cc +++ b/src/comm.cc @@ -1,6 +1,6 @@ /* - * $Id: comm.cc,v 1.370 2003/03/08 09:35:15 robertc Exp $ + * $Id: comm.cc,v 1.371 2003/03/08 16:18:45 robertc Exp $ * * DEBUG: section 5 Socket Functions * AUTHOR: Harvest Derived @@ -1275,12 +1275,13 @@ ConnectStateData::callCallback(comm_err_t status, int xerrno) CallBack aCallback = callback; callback = CallBack(); commSetTimeout(fd, -1, NULL, NULL); - commConnectFree(fd, this); if (cbdataReferenceValid(aCallback.data)) aCallback.handler(fd, status, xerrno, aCallback.data); cbdataReferenceDone(aCallback.data); + + commConnectFree(fd, this); } static void