Re: [evolution-patches] e-mktemp patches



On Tue, 2004-07-13 at 11:46 -0400, Jeffrey Stedfast wrote:
> looks good - have you checked all the consumers to make sure that they
> all free the returns?

Of course they weren't freeing it. That would have been bad if they had
been. Anyway, looks like it's only used in two places, so that's easy
enough to fix.

On Tue, 2004-07-13 at 13:30 -0400, JP Rosevear wrote:
> Why remove the printf's? why not just d() them?

Because one of them was inside an if() and I didn't want to think about
it. :)

Anyway, both issues fixed below


Index: e-util/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/e-util/ChangeLog,v
retrieving revision 1.470
diff -u -r1.470 ChangeLog
--- e-util/ChangeLog	2 Jul 2004 16:03:56 -0000	1.470
+++ e-util/ChangeLog	13 Jul 2004 17:46:08 -0000
@@ -1,3 +1,10 @@
+2004-07-12  Dan Winship  <danw novell com>
+
+	* e-mktemp.c (e_mktemp, e_mkdtemp): un-const the return values,
+	since they need to be freed
+	(d): turn off debugging
+	(expire_dir_rec): remove debug printfs
+
 2004-07-02  Chris Toshok  <toshok ximian com>
 
 	[ fixes #60691 ]
Index: e-util/e-mktemp.c
===================================================================
RCS file: /cvs/gnome/evolution/e-util/e-mktemp.c,v
retrieving revision 1.9
diff -u -r1.9 e-mktemp.c
--- e-util/e-mktemp.c	3 Mar 2004 06:24:19 -0000	1.9
+++ e-util/e-mktemp.c	13 Jul 2004 17:46:08 -0000
@@ -40,7 +40,7 @@
 
 #include "e-mktemp.h"
 
-#define d(x) x
+#define d(x)
 
 /* define to put temporary files in ~/evolution/cache/tmp */
 #define TEMP_HOME (1)
@@ -60,7 +60,7 @@
 	struct stat st;
 	int count = 0;
 
-	printf("expire dir '%s'\n", base);
+	d(printf("expire dir '%s'\n", base));
 
 	dir = opendir(base);
 	if (dir == NULL)
@@ -100,7 +100,7 @@
 	g_string_free(path, TRUE);
 	closedir(dir);
 
-	printf("expire dir '%s' %d remaining files\n", base, count);
+	d(printf("expire dir '%s' %d remaining files\n", base, count));
 
 	return count;
 }
@@ -153,8 +153,7 @@
 	}
 #endif	
 
-	if (path)
-		printf("temp dir '%s'\n", path->str);
+	d(printf("temp dir '%s'\n", path ? path->str : "(null)"));
 
 	/* fire off an expirey attempt no more often than TEMP_SCAN seconds */
 	if (path && (last+TEMP_SCAN) < now) {
@@ -165,7 +164,7 @@
 	return path;
 }
 
-const char *
+char *
 e_mktemp (const char *template)
 {
 	GString *path;
@@ -211,7 +210,7 @@
 }
 
 
-const char *
+char *
 e_mkdtemp (const char *template)
 {
 	GString *path;
Index: e-util/e-mktemp.h
===================================================================
RCS file: /cvs/gnome/evolution/e-util/e-mktemp.h,v
retrieving revision 1.2
diff -u -r1.2 e-mktemp.h
--- e-util/e-mktemp.h	27 Oct 2001 23:42:27 -0000	1.2
+++ e-util/e-mktemp.h	13 Jul 2004 17:46:08 -0000
@@ -23,10 +23,10 @@
 #ifndef __E_MKTEMP_H__
 #define __E_MKTEMP_H__
 
-const char *e_mktemp  (const char *template);
+char *e_mktemp  (const char *template);
 
-int         e_mkstemp (const char *template);
+int   e_mkstemp (const char *template);
 
-const char *e_mkdtemp (const char *template);
+char *e_mkdtemp (const char *template);
 
 #endif /* __E_MKTEMP_H__ */
Index: mail/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/mail/ChangeLog,v
retrieving revision 1.3414
diff -u -r1.3414 ChangeLog
--- mail/ChangeLog	10 Jul 2004 01:31:04 -0000	1.3414
+++ mail/ChangeLog	13 Jul 2004 17:46:08 -0000
@@ -1,3 +1,8 @@
+2004-07-13  Dan Winship  <danw novell com>
+
+	* em-utils.c (em_utils_selection_set_urilist,
+	em_utils_temp_save_part): free return value from e_mkdtemp
+
 2004-07-09  Not Zed  <NotZed Ximian com>
 
 	* em-folder-browser.c (emfb_folder_expunge): only call expunge if
Index: mail/em-utils.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-utils.c,v
retrieving revision 1.43
diff -u -r1.43 em-utils.c
--- mail/em-utils.c	24 Jun 2004 21:27:44 -0000	1.43
+++ mail/em-utils.c	13 Jul 2004 17:46:08 -0000
@@ -994,7 +994,7 @@
 void
 em_utils_selection_set_urilist(GtkSelectionData *data, CamelFolder *folder, GPtrArray *uids)
 {
-	const char *tmpdir;
+	char *tmpdir;
 	CamelStream *fstream;
 	char *uri, *p, *file = NULL;
 	int fd;
@@ -1023,6 +1023,7 @@
 
 	p = uri = g_alloca (strlen (tmpdir) + strlen(file) + 16);
 	p += sprintf (uri, "file:///%s/%s", tmpdir, file);
+	g_free(tmpdir);
 	g_free(file);
 	
 	fd = open(uri + 7, O_WRONLY | O_CREAT | O_EXCL, 0666);
@@ -1104,8 +1105,8 @@
 char *
 em_utils_temp_save_part(GtkWidget *parent, CamelMimePart *part)
 {
-	const char *tmpdir, *filename;
-	char *path, *mfilename = NULL;
+	const char *filename;
+	char *tmpdir, *path, *mfilename = NULL;
 	int done;
 
 	tmpdir = e_mkdtemp("evolution-tmp-XXXXXX");
@@ -1125,6 +1126,7 @@
 	}
 
 	path = g_build_filename(tmpdir, filename, NULL);
+	g_free(tmpdir);
 	g_free(mfilename);
 
 	/* FIXME: This doesn't handle default charsets */


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]