From: Carl Worth Date: Tue, 20 Oct 2009 20:05:45 +0000 (-0700) Subject: add_message: Fix memory leak of thread_ids GPtrArray. X-Git-Tag: 0.1~813 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=5a84df0f1507753b1776636ad268d36b7346a8fd;p=notmuch.git add_message: Fix memory leak of thread_ids GPtrArray. We were properly feeing this memory when the thread-ids list was not empty, but leaking it when it was. Thanks, of course, to valgrind along with the G_SLICE=always-malloc environment variable which makes leak checking with glib almost bearable. --- diff --git a/database.cc b/database.cc index abae5820..59e83736 100644 --- a/database.cc +++ b/database.cc @@ -577,7 +577,6 @@ notmuch_database_add_message (notmuch_database_t *notmuch, free (id); } - g_ptr_array_free (thread_ids, TRUE); doc.add_value (NOTMUCH_VALUE_THREAD, thread_id->str); g_string_free (thread_id, TRUE); } else if (message_id) { @@ -589,6 +588,8 @@ notmuch_database_add_message (notmuch_database_t *notmuch, doc.add_value (NOTMUCH_VALUE_THREAD, thread_id.str); } + g_ptr_array_free (thread_ids, TRUE); + free (message_id); date = notmuch_message_get_header (message, "date");