X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=notmuch-show.c;h=8da3295e3cee204c7ac847928fbe477c1608b659;hb=1e3a37b83c927334a73409296570885e14072f3c;hp=dbb1efb97f5954438d6d274f8bc5b7fb9cfb68c9;hpb=12de016686351b78631546299ed35cced01f1e77;p=notmuch diff --git a/notmuch-show.c b/notmuch-show.c index dbb1efb9..8da3295e 100644 --- a/notmuch-show.c +++ b/notmuch-show.c @@ -255,7 +255,9 @@ _extract_email_address (const void *ctx, const char *from) email = talloc_strdup (ctx, email); DONE: - /* XXX: How to free addresses here? */ + if (addresses) + g_object_unref (addresses); + return email; } @@ -469,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)); @@ -708,6 +713,9 @@ format_part_end_json (GMimeObject *part) static void format_part_content_raw (GMimeObject *part) { + if (! GMIME_IS_PART (part)) + return; + GMimeStream *stream_stdout; GMimeStream *stream_filter = NULL; GMimeDataWrapper *wrapper; @@ -933,6 +941,8 @@ notmuch_show_command (void *ctx, unused (int argc), unused (char *argv[])) params.cryptoctx = NULL; params.decrypt = 0; + argc--; argv++; /* skip subcommand argument */ + for (i = 0; i < argc && argv[i][0] == '-'; i++) { if (strcmp (argv[i], "--") == 0) { i++;