From b3370d9eb4c77cfb39e6045af5f4cdb8c045452f Mon Sep 17 00:00:00 2001
From: Carl Worth <cworth@cworth.org>
Date: Tue, 17 Apr 2007 08:20:45 -0700
Subject: [PATCH] Free memory leaks in mnemon_save (thanks valgrind!)

---
 mnemon.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/mnemon.c b/mnemon.c
index f35c0b7..101ace8 100644
--- a/mnemon.c
+++ b/mnemon.c
@@ -503,6 +503,7 @@ mnemon_save (mnemon_t *mnemon)
 		   mnemon->dir_name, category->name);
 	xasprintf (&lock_filename, "%s/.#%s",
 		   mnemon->dir_name, category->name);
+
 	file = fopen (lock_filename, "w");
 	if (file == NULL) {
 	    fprintf (stderr, "Error: Failed to open %s for writing: %s\n",
@@ -512,12 +513,17 @@ mnemon_save (mnemon_t *mnemon)
 
 	category_print (category, file);
 
+	fclose (file);
+
 	err = rename (lock_filename, filename);
 	if (err < 0) {
 	    fprintf (stderr, "Error: Failes to rename %s to %s: %s\n",
 		     lock_filename, filename, strerror (errno));
 	    continue;
 	}
+
+	free (filename);
+	free (lock_filename);
     }
 }
 
-- 
2.45.2