]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Clean up comm memory on exit
authorhno <>
Tue, 25 Sep 2007 19:24:59 +0000 (19:24 +0000)
committerhno <>
Tue, 25 Sep 2007 19:24:59 +0000 (19:24 +0000)
src/comm.cc
src/comm.h
src/fd.cc
src/main.cc
src/protos.h

index acd65448fbeebb76b2e046303cfd3131c88ddbfe..8730440657532364cc395301ea5c764ae0c9e21b 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: comm.cc,v 1.436 2007/09/21 15:16:42 hno Exp $
+ * $Id: comm.cc,v 1.437 2007/09/25 13:24:59 hno Exp $
  *
  * DEBUG: section 5     Socket Functions
  * AUTHOR: Harvest Derived
@@ -1841,6 +1841,17 @@ comm_init(void) {
     conn_close_pool = memPoolCreate("close_handler", sizeof(close_handler));
 }
 
+void
+comm_exit(void) {
+    safe_free(fd_table);
+    safe_free(fdd_table);
+    if (fdc_table) {
+       delete[] fdc_table;
+       fdc_table = NULL;
+    }
+    safe_free(commfd_table);
+}
+
 /* Write to FD. */
 static void
 commHandleWrite(int fd, void *data) {
index 89b165894ca3bce3163b8ef96e5bfda861287d8a..db8b62a9bb658f6850f18bd30c18e735b28f71c0 100644 (file)
@@ -48,6 +48,7 @@ SQUIDCEXTERN void commConnectStart(int fd, const char *, u_short, CNCB *, void *
 
 SQUIDCEXTERN int comm_connect_addr(int sock, const struct sockaddr_in *);
 SQUIDCEXTERN void comm_init(void);
+SQUIDCEXTERN void comm_exit(void);
 
 SQUIDCEXTERN int comm_open(int, int, struct IN_ADDR, u_short port, int, const char *note);
 
index 86ca0e93539625fa8eae72534281ca9fff12c299..12ee236e1df4cd89b3033a1f996d5b2902178bba 100644 (file)
--- a/src/fd.cc
+++ b/src/fd.cc
@@ -1,6 +1,6 @@
 
 /*
- * $Id: fd.cc,v 1.58 2007/06/25 14:38:14 hno Exp $
+ * $Id: fd.cc,v 1.59 2007/09/25 13:24:59 hno Exp $
  *
  * DEBUG: section 51    Filedescriptor Functions
  * AUTHOR: Duane Wessels
@@ -247,12 +247,6 @@ fd_bytes(int fd, int len, unsigned int type)
         F->bytes_written += len;
 }
 
-void
-fdFreeMemory(void)
-{
-    safe_free(fd_table);
-}
-
 void
 fdDumpOpen(void)
 {
index 290ed20f19a1e6b59604be035c93a405739c46b1..26ffe7cb2310553f08cc89a9901643cb689c703b 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: main.cc,v 1.449 2007/08/30 21:51:35 hno Exp $
+ * $Id: main.cc,v 1.450 2007/09/25 13:24:59 hno Exp $
  *
  * DEBUG: section 1     Startup and Main Loop
  * AUTHOR: Harvest Derived
@@ -1694,7 +1694,7 @@ SquidShutdown()
 #endif
     fdDumpOpen();
 
-    fdFreeMemory();
+    comm_exit();
 
     memClean();
 
index f36bd7ca28d2a670c928b9f41f96e92943a71d3c..11429288ca314b4ddca41b8f287188686a6dc171 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: protos.h,v 1.548 2007/08/13 17:20:51 hno Exp $
+ * $Id: protos.h,v 1.549 2007/09/25 13:24:59 hno Exp $
  *
  *
  * SQUID Web Proxy Cache          http://www.squid-cache.org/
@@ -148,7 +148,6 @@ SQUIDCEXTERN void fd_close(int fd);
 SQUIDCEXTERN void fd_open(int fd, unsigned int type, const char *);
 SQUIDCEXTERN void fd_note(int fd, const char *);
 SQUIDCEXTERN void fd_bytes(int fd, int len, unsigned int type);
-SQUIDCEXTERN void fdFreeMemory(void);
 SQUIDCEXTERN void fdDumpOpen(void);
 SQUIDCEXTERN int fdNFree(void);
 SQUIDCEXTERN int fdUsageHigh(void);