[PATCH] Do not attept to output part raw if part is not GMimePart.

Austin Clements amdragon at mit.edu
Mon Jun 27 13:43:36 PDT 2011


On Mon, Jun 27, 2011 at 1:07 PM, Jameson Graef Rollins
<jrollins at finestructure.net> wrote:
> On Thu, 23 Jun 2011 16:33:18 -0700, Carl Worth <cworth at cworth.org> wrote:
>> I'd like to investigate this case a little bit to help answer the
>> question of whether "notmuch should have done anything in this case".
>
> Hi, Carl.  You can see this error if you try to output raw a multipart/*
> or message/rfc822 part, ie:
>
> servo:~ 0$ notmuch show --part=1 --format=raw id:"87wrgccedd.fsf at yoom.home.cworth.org" >/dev/null
>
> (process:29838): GLib-GObject-WARNING **: invalid cast from `GMimeMultipartSigned' to `GMimePart'
>
> (process:29838): gmime-CRITICAL **: g_mime_part_get_content_object: assertion `GMIME_IS_PART (mime_part)' failed
> servo:~ 0$
>
> Gmime seems to be successfully casting the part into GMimePart and then
> outputting the content, but it does produce the warning on stderr.

Just to clarify my understanding, --format=raw is only intended to
work on either the whole message (special-cased in do_show_single) or
a leaf MIME part, and in any other case, it will output nothing?  The
raw output test cases seem pretty thin.

(BTW, I believe the show restructuring I have under way should both
lift this restriction and eliminate the special case.)


More information about the notmuch mailing list