squid-3 leak in store_swapout.cc

From: Adrian Chadd <adrian@dont-contact.us>
Date: Tue, 10 Feb 2004 23:52:21 -0700

hi all,

Here's a fix for a memory leak I found during some
polygraph stress testing:

Index: store_swapout.cc
===================================================================
RCS file: /server/cvs-server/squid/squid3/src/store_swapout.cc,v
retrieving revision 1.97
diff -u -r1.97 store_swapout.cc
--- store_swapout.cc 6 Sep 2003 12:59:04 -0000 1.97
+++ store_swapout.cc 11 Feb 2004 06:50:59 -0000
@@ -68,6 +68,7 @@

     if (NULL == sio.getRaw()) {
         e->swap_status = SWAPOUT_NONE;
+ cbdataFree(c);
         storeLog(STORE_LOG_SWAPOUTFAIL, e);
         return;
     }

.. the cbdata was allocated before the storeCreate() call
but if the call failed said cbdata wasn't being freed.
This affects the ufs storetype - I'll double-check the
others to see whether we're freeing that cbdata entry
elsewhere for some reason.

Comments? May I just commit it?

adrian
Received on Tue Feb 10 2004 - 23:52:22 MST

This archive was generated by hypermail pre-2.1.9 : Mon Mar 01 2004 - 12:00:04 MST