[tracker/rss-enclosures] Fix leaks when not unref-ing GFileInfo
- From: Roberto Guido <rguido src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/rss-enclosures] Fix leaks when not unref-ing GFileInfo
- Date: Wed, 24 Nov 2010 00:59:34 +0000 (UTC)
commit b3959f1084dc34c3ffb65c527fbf877202e570d7
Author: Aleksander Morgado <aleksander lanedo com>
Date: Mon Jul 19 10:16:19 2010 +0200
Fix leaks when not unref-ing GFileInfo
src/libtracker-common/tracker-file-utils.c | 4 ++--
src/miners/fs/tracker-miner-applications.c | 12 ++++++++----
src/tracker-extract/tracker-extract-msoffice.c | 2 ++
src/tracker-writeback/tracker-writeback-playlist.c | 1 +
4 files changed, 13 insertions(+), 6 deletions(-)
---
diff --git a/src/libtracker-common/tracker-file-utils.c b/src/libtracker-common/tracker-file-utils.c
index ef95f5a..5cf65bd 100644
--- a/src/libtracker-common/tracker-file-utils.c
+++ b/src/libtracker-common/tracker-file-utils.c
@@ -503,9 +503,9 @@ path_has_write_access (const gchar *path,
}
writable = g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE);
- }
- g_object_unref (info);
+ g_object_unref (info);
+ }
return writable;
}
diff --git a/src/miners/fs/tracker-miner-applications.c b/src/miners/fs/tracker-miner-applications.c
index 4d99817..24b40e4 100644
--- a/src/miners/fs/tracker-miner-applications.c
+++ b/src/miners/fs/tracker-miner-applications.c
@@ -408,11 +408,11 @@ process_desktop_file (ProcessApplicationData *data,
if (is_software) {
gchar *icon;
- insert_data_from_desktop_file (sparql, uri,
- TRACKER_NIE_PREFIX "comment", key_file,
+ insert_data_from_desktop_file (sparql, uri,
+ TRACKER_NIE_PREFIX "comment", key_file,
"Comment", TRUE);
- insert_data_from_desktop_file (sparql, uri,
- TRACKER_NFO_PREFIX "softwareCmdLine", key_file,
+ insert_data_from_desktop_file (sparql, uri,
+ TRACKER_NFO_PREFIX "softwareCmdLine", key_file,
"Exec", TRUE);
icon = g_key_file_get_string (key_file, GROUP_DESKTOP_ENTRY, "Icon", NULL);
@@ -574,6 +574,10 @@ process_file_cb (GObject *object,
if (error) {
g_error_free (error);
}
+
+ if (file_info) {
+ g_object_unref (file_info);
+ }
}
static gboolean
diff --git a/src/tracker-extract/tracker-extract-msoffice.c b/src/tracker-extract/tracker-extract-msoffice.c
index aa9d434..ad8dcd9 100644
--- a/src/tracker-extract/tracker-extract-msoffice.c
+++ b/src/tracker-extract/tracker-extract-msoffice.c
@@ -1657,6 +1657,8 @@ extract_msoffice (const gchar *uri,
infile = open_uri (uri);
if (!infile) {
+ g_object_unref (file_info);
+ gsf_shutdown ();
return;
}
diff --git a/src/tracker-writeback/tracker-writeback-playlist.c b/src/tracker-writeback/tracker-writeback-playlist.c
index 5bf326f..0266391 100644
--- a/src/tracker-writeback/tracker-writeback-playlist.c
+++ b/src/tracker-writeback/tracker-writeback-playlist.c
@@ -122,6 +122,7 @@ get_playlist_type (GFile *file,
}
mime_type = g_file_info_get_content_type (file_info);
+ g_object_unref (file_info);
if (!mime_type) {
return FALSE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]