From: Alex Rousskov Date: Sun, 19 May 2013 02:31:15 +0000 (-0600) Subject: Avoid Comm::Connection leaks when helpers are reconfigured or otherwise closed. X-Git-Tag: SQUID_3_3_5~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0487053987b1e5508bb544d6173e8fabb1d09f4c;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 4fb75fb902..b020a2c142 100644 --- a/src/helper.cc +++ b/src/helper.cc @@ -765,7 +765,7 @@ helperServerFree(helper_server *srv) safe_free(srv->requests); cbdataReferenceDone(srv->parent); - cbdataFree(srv); + delete srv; } static void @@ -831,7 +831,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