From: Alex Rousskov Date: Sat, 11 May 2013 14:45:03 +0000 (-0600) Subject: Avoid Comm::Connection leaks when helpers are reconfigured or otherwise closed. X-Git-Tag: SQUID_3_4_0_1~158 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f7ebc3fd291b12756212d52339286a2cde3a1921;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 9f0268d26e..bd238197ee 100644 --- a/src/helper.cc +++ b/src/helper.cc @@ -771,7 +771,7 @@ helperServerFree(helper_server *srv) safe_free(srv->requests); cbdataReferenceDone(srv->parent); - cbdataFree(srv); + delete srv; } static void @@ -840,7 +840,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