From: Alex Rousskov Date: Sun, 19 May 2013 03:35:34 +0000 (-0600) Subject: Avoid Comm::Connection leaks when helpers are reconfigured or otherwise closed. X-Git-Tag: SQUID_3_2_12~8 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=70b465815e7f807395d1922b394f8a7870bda9e1;p=thirdparty%2Fsquid.git Avoid Comm::Connection leaks when helpers are reconfigured or otherwise closed. CBDATA_CLASS2 classes must be deleted using C++ delete, not cbdataFree(). cbdataFree() does not call the class destructor. --- diff --git a/src/helper.cc b/src/helper.cc index f554ff6478..0f3e0415b3 100644 --- a/src/helper.cc +++ b/src/helper.cc @@ -750,7 +750,7 @@ helperServerFree(helper_server *srv) safe_free(srv->requests); cbdataReferenceDone(srv->parent); - cbdataFree(srv); + delete srv; } static void @@ -812,7 +812,7 @@ helperStatefulServerFree(helper_stateful_server *srv) cbdataReferenceDone(srv->parent); - cbdataFree(srv); + delete srv; } /// Calls back with a pointer to the buffer with the helper output