[evolution-data-server] Fix various memory leaks
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server] Fix various memory leaks
- Date: Thu, 23 Apr 2015 15:42:27 +0000 (UTC)
commit 0f21c29de99eafb9d762fb12d0148628ed45f477
Author: Milan Crha <mcrha redhat com>
Date: Thu Apr 23 17:42:10 2015 +0200
Fix various memory leaks
camel/camel-folder-thread.c | 2 ++
camel/providers/imapx/camel-imapx-server.c | 1 +
camel/providers/local/camel-maildir-summary.c | 2 +-
camel/providers/nntp/camel-nntp-store.c | 1 +
4 files changed, 5 insertions(+), 1 deletions(-)
---
diff --git a/camel/camel-folder-thread.c b/camel/camel-folder-thread.c
index af516e7..6caf946 100644
--- a/camel/camel-folder-thread.c
+++ b/camel/camel-folder-thread.c
@@ -718,6 +718,8 @@ camel_folder_thread_messages_apply (CamelFolderThread *thread,
thread->node_chunks = camel_memchunk_new (32, sizeof (CamelFolderThreadNode));
thread_summary (thread, all);
+ for (i = 0; i < thread->summary->len; i++)
+ camel_message_info_unref (thread->summary->pdata[i]);
g_ptr_array_free (thread->summary, TRUE);
thread->summary = all;
}
diff --git a/camel/providers/imapx/camel-imapx-server.c b/camel/providers/imapx/camel-imapx-server.c
index 278e995..7b54f89 100644
--- a/camel/providers/imapx/camel-imapx-server.c
+++ b/camel/providers/imapx/camel-imapx-server.c
@@ -8458,6 +8458,7 @@ imapx_server_get_message (CamelIMAPXServer *is,
cache_stream = camel_data_cache_add (message_cache, "tmp", message_uid, error);
if (cache_stream == NULL) {
+ camel_message_info_unref (mi);
QUEUE_UNLOCK (is);
return NULL;
}
diff --git a/camel/providers/local/camel-maildir-summary.c b/camel/providers/local/camel-maildir-summary.c
index 47bfb81..5491ca4 100644
--- a/camel/providers/local/camel-maildir-summary.c
+++ b/camel/providers/local/camel-maildir-summary.c
@@ -650,8 +650,8 @@ maildir_summary_check (CamelLocalSummary *cls,
info = g_hash_table_lookup (left, uid);
if (info) {
- camel_message_info_unref (info);
g_hash_table_remove (left, uid);
+ camel_message_info_unref (info);
}
info = camel_folder_summary_get ((CamelFolderSummary *) cls, uid);
diff --git a/camel/providers/nntp/camel-nntp-store.c b/camel/providers/nntp/camel-nntp-store.c
index 86a5772..3b95ca4 100644
--- a/camel/providers/nntp/camel-nntp-store.c
+++ b/camel/providers/nntp/camel-nntp-store.c
@@ -2015,6 +2015,7 @@ ioerror:
exit:
g_clear_object (&nntp_stream);
+ g_string_free (buffer, TRUE);
return u;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]