From ff91aeedc170b15ea26c68e514b8279ca3ebd3b6 Mon Sep 17 00:00:00 2001 From: Tomi Ollila Date: Tue, 13 Dec 2011 20:18:48 +0200 Subject: [PATCH] notmuch: unref charset_filter to fix one memory leak In my test case added g_object_unref(charset_filter) reduces memory consumption over 90% when 'notmuch show --format=text "*"' is executed (~11000 messages, RES ~330M -> ~25M). --- notmuch-show.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/notmuch-show.c b/notmuch-show.c index 873a7c4c..8da3295e 100644 --- a/notmuch-show.c +++ b/notmuch-show.c @@ -471,9 +471,12 @@ show_text_part_content (GMimeObject *part, GMimeStream *stream_out) /* This result can be NULL for things like "unknown-8bit". * Don't set a NULL filter as that makes GMime print * annoying assertion-failure messages on stderr. */ - if (charset_filter) + if (charset_filter) { g_mime_stream_filter_add (GMIME_STREAM_FILTER (stream_filter), charset_filter); + g_object_unref (charset_filter); + } + } wrapper = g_mime_part_get_content_object (GMIME_PART (part));