From 2823a2c256f7dde17b4468f86e1f04b8ae5ba9a9 Mon Sep 17 00:00:00 2001
From: Per Cederqvist <ceder@lysator.liu.se>
Date: Sat, 21 Sep 1991 12:13:08 +0000
Subject: [PATCH] Fixed memory leak in mux_close.

---
 src/server/mux.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/server/mux.c b/src/server/mux.c
index 69423bd6b..cf6e8d2d1 100644
--- a/src/server/mux.c
+++ b/src/server/mux.c
@@ -1,5 +1,5 @@
 /*
- * $Id: mux.c,v 0.5 1991/09/15 10:30:47 linus Exp $
+ * $Id: mux.c,v 0.6 1991/09/21 12:13:08 ceder Exp $
  * Copyright (C) 1991  Lysator Academic Computer Association.
  *
  * This file is part of the LysKOM server.
@@ -26,7 +26,7 @@
 ** mux.c
 */
 
-static char *rcsid = "$Id: mux.c,v 0.5 1991/09/15 10:30:47 linus Exp $";
+static char *rcsid = "$Id: mux.c,v 0.6 1991/09/21 12:13:08 ceder Exp $";
 
  
 #include <stddef.h>
@@ -103,6 +103,7 @@ mux_destruct(Mux *mp)
 
   mux_free_parsed(mp);
   s_clear(&mp->parse.unparsed);
+
   sfree(mp->client_v);
   sfree(mp);
 }
@@ -409,6 +410,12 @@ mux_close(Connection  * cp)
   {
     case MUX_TYPE_CLIENT:
       isc_close(mp->scb);
+
+      if (mp->client_c != 1)
+	  restart_kom("ERROR: mux_close(): client_c == %d\n", mp->client_c);
+  
+      isc_freemsg(mp->client_v[0].outmsg);
+
       mux_destruct(mp);
       cp->mux = NULL;
       break;
-- 
GitLab