[Xfce4-commits] r23481 - xarchiver/branches/xarchiver-psybsd/libxarchiver

Stephan Arts stephan at xfce.org
Fri Oct 20 08:37:28 UTC 2006


Author: stephan
Date: 2006-10-20 08:37:28 +0000 (Fri, 20 Oct 2006)
New Revision: 23481

Modified:
   xarchiver/branches/xarchiver-psybsd/libxarchiver/archive-support-gnu-tar.c
   xarchiver/branches/xarchiver-psybsd/libxarchiver/archive.c
   xarchiver/branches/xarchiver-psybsd/libxarchiver/mime.c
   xarchiver/branches/xarchiver-psybsd/libxarchiver/mime.h
Log:
Cleaned up some memory leaks.



Modified: xarchiver/branches/xarchiver-psybsd/libxarchiver/archive-support-gnu-tar.c
===================================================================
--- xarchiver/branches/xarchiver-psybsd/libxarchiver/archive-support-gnu-tar.c	2006-10-20 07:54:53 UTC (rev 23480)
+++ xarchiver/branches/xarchiver-psybsd/libxarchiver/archive-support-gnu-tar.c	2006-10-20 08:37:28 UTC (rev 23481)
@@ -95,6 +95,7 @@
 {
 	/* TODO: free return value of g_find_program_in_path */
 	LXAArchiveSupport *archive_support = LXA_ARCHIVE_SUPPORT(support);
+	gchar *program_path = NULL;
 
 	archive_support->id = "Gnu Tar";
 
@@ -105,17 +106,33 @@
 
 	lxa_archive_support_add_mime(archive_support, "application/x-tar");
 	/* Check for existence of compress -- required for x-tarz */
-	if(g_find_program_in_path("compress"))
+	program_path = g_find_program_in_path("compress");
+	if(program_path)
+	{
 		lxa_archive_support_add_mime(archive_support, "application/x-tarz");
+		g_free(program_path);
+	}
 	/* Check for existence of gzip -- required for x-compressed-tar*/
-	if(g_find_program_in_path("gzip"))
+	program_path = g_find_program_in_path("gzip");
+	if(program_path)
+	{
 		lxa_archive_support_add_mime(archive_support, "application/x-compressed-tar");
+		g_free(program_path);
+	}
 	/* Check for existence of bzip2 -- required for x-bzip-compressed-tar */
-	if(g_find_program_in_path("bzip2"))
+	program_path = g_find_program_in_path("bzip2");
+	if(program_path)
+	{
 		lxa_archive_support_add_mime(archive_support, "application/x-bzip-compressed-tar");
+		g_free(program_path);
+	}
 	/* Check for existence of lzop -- required for x-tzo */
-	if(g_find_program_in_path("lzop"))
+	program_path = g_find_program_in_path("lzop");
+	if(program_path)
+	{
 		lxa_archive_support_add_mime(archive_support, "application/x-tzo");
+		g_free(program_path);
+	}
 
 	archive_support->add = lxa_archive_support_gnu_tar_add;
 	archive_support->extract = lxa_archive_support_gnu_tar_extract;

Modified: xarchiver/branches/xarchiver-psybsd/libxarchiver/archive.c
===================================================================
--- xarchiver/branches/xarchiver-psybsd/libxarchiver/archive.c	2006-10-20 07:54:53 UTC (rev 23480)
+++ xarchiver/branches/xarchiver-psybsd/libxarchiver/archive.c	2006-10-20 08:37:28 UTC (rev 23481)
@@ -43,7 +43,7 @@
 struct _LXAEntry
 {
 	gchar *filename;
-	const LXAMimeInfo *mime_info;
+	LXAMimeInfo *mime_info;
 	gpointer props;
 	LXAEntry **children;
 	LXASList *buffer;
@@ -506,6 +506,8 @@
 		}
 		g_free(entry->props);
 	}
+	if(entry->mime_info)
+		lxa_mime_info_unref(entry->mime_info);
 	g_free(entry->filename);
 	g_free(entry);
 }
@@ -787,7 +789,7 @@
 
 /**
  * const gchar *
- * lxa_archive_iter_get_mime(const LXAArchive *, const LXAArchiveIter *)
+ * lxa_archive_iter_get_mimetype(const LXAArchive *, const LXAArchiveIter *)
  *
  * returns mime type
  */

Modified: xarchiver/branches/xarchiver-psybsd/libxarchiver/mime.c
===================================================================
--- xarchiver/branches/xarchiver-psybsd/libxarchiver/mime.c	2006-10-20 07:54:53 UTC (rev 23480)
+++ xarchiver/branches/xarchiver-psybsd/libxarchiver/mime.c	2006-10-20 08:37:28 UTC (rev 23481)
@@ -121,3 +121,13 @@
 	/* g_free((gchar *)mime_type); */
 }
 
+void
+lxa_mime_info_unref(LXAMimeInfo *mime_info)
+{
+#ifdef HAVE_THUNAR_VFS
+	thunar_vfs_mime_info_unref((ThunarVfsMimeInfo *)mime_info);
+#else
+
+#endif
+
+}

Modified: xarchiver/branches/xarchiver-psybsd/libxarchiver/mime.h
===================================================================
--- xarchiver/branches/xarchiver-psybsd/libxarchiver/mime.h	2006-10-20 07:54:53 UTC (rev 23480)
+++ xarchiver/branches/xarchiver-psybsd/libxarchiver/mime.h	2006-10-20 08:37:28 UTC (rev 23481)
@@ -45,4 +45,7 @@
 const gchar *
 lxa_mime_info_get_name(const LXAMimeInfo *mime_info);
 
+void
+lxa_mime_info_unref(LXAMimeInfo *mime_info);
+
 #endif /* __LXA_MIME_H__ */



More information about the Xfce4-commits mailing list