From 078c903c2d38fa5dc11f75135fd679b5b6b2ae84 Mon Sep 17 00:00:00 2001
From: Per Cederqvist <ceder@lysator.liu.se>
Date: Tue, 11 Jun 1991 21:48:37 +0000
Subject: [PATCH] Memory leak. Better support for shutdown messages.

---
 src/server/ramkomd.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/src/server/ramkomd.c b/src/server/ramkomd.c
index 985166759..5ce68bba7 100644
--- a/src/server/ramkomd.c
+++ b/src/server/ramkomd.c
@@ -34,6 +34,7 @@
 #include "config.h"
 #include "exp.h"
 #include "memory.h"
+#include "internal-connections.h"
 
 Kom_err		  kom_errno;
 u_long		  err_stat;
@@ -131,6 +132,11 @@ init_data_base(const char *dbase_dir)
 	{
 	    restart_kom("init_data_base: Kan ej skapa m|ten\n");
 	}
+
+	s_clear(&a);
+	s_clear(&b);
+	s_clear(&c);
+	s_clear(&d);
     }
 }
 
@@ -200,6 +206,7 @@ main (int    argc,
 {
     int i;
     FILE *stat_file;
+    extern int number_of_allocated_strings(void); /* From s-string.c */
 
     s_set_storage_management(smalloc, srealloc, sfree);
 
@@ -254,6 +261,7 @@ main (int    argc,
     toploop();
 
     logout_all_clients();
+    isc_shutdown(kom_server_mcb);
     cache_sync_all();
 
     stat_file = fopen(memusefile, "w");
@@ -269,6 +277,9 @@ main (int    argc,
     dump_smalloc_counts(stat_file);
     dump_alloc_counts(stat_file);
     dump_cache_mem_usage(stat_file);
+    fprintf(stat_file, "---s-string.c:\n\tStrings:          %d\n",
+	    number_of_allocated_strings());
+    dump_allocated_connections(stat_file);
 
     fclose (stat_file);
 
-- 
GitLab