From: Ladislav Lhotka <lhotka@cesnet.cz>
To: Michal Sojka <sojkam1@fel.cvut.cz>, notmuch@notmuchmail.org
Subject: Re: problem with I-D announcements
Date: Tue, 24 Aug 2010 14:09:59 +0200 [thread overview]
Message-ID: <87r5ho6wko.fsf@cesnet.cz> (raw)
In-Reply-To: <87iq3a3bak.fsf@steelpick.2x.cz>
On Mon, 16 Aug 2010 16:02:59 +0200, Michal Sojka <sojkam1@fel.cvut.cz> wrote:
> On Mon, 16 Aug 2010, Ladislav Lhotka wrote:
> > I am experiencing a problem with a specific type of messages, namely
> > announcements of new Internet drafts. One such message is shown below
> > with all headers.
> >
> > In a search buffer, if I press [RET], the message is shown but the echo
> > line says "Couldn't find access type". The [SPC] key then doesn't work,
> > only "Beginning of buffer" is displayed in the echo area. Other
> > commands, such as adding tags, work as usual.
>
> Greetings to another czech notmuch user :-)
>
> I can confirm the behavior you describe. It seems the error message is
> generated by mm-extern-cache-contents in gnus/mm-extern.el. According to
> comments in that file, it works with something called
> "message/external-body". Currently, I have no clue what external-body
> means but your message contains such thing.
>
> My poor Elisp knowledge doesn't allow me to debug the problem, but you
> may want to check whether the same problem appears in Gnus and if so,
> consult it with Gnus developers.
With my faint Elisp expertise, I tried to investigate the problem a bit
and it seems it is in the notmuch elisp part. The
'mm-extern-cache-contents' function you mentioned
initializes the 'access-type' variable like this:
(let* ((access-type (cdr (assq 'access-type
(cdr (mm-handle-type handle)))))
The 'handle' argument for the problematic message looks like this:
(#<buffer *temp*> ("message/external-body") nil nil nil nil nil nil)
Now, 'mm-handle-type' function extracts the second member from 'handle',
which is ("message/external-body"). Applying 'cdr' to this list yields
necessarily nil and so access-type is always initialized to nil and
consequently the error "Couldn't find access type" is reported.
The ("message/external-body") list is constructed originally in
'notmuch-show-insert-bodypart' function and passed - as 'content-type'
argument - through several stack frames. The use of 'cdr' and 'assq'
functions in the above initialization expression however indicates that
'mm-extern-cache-contents' expects something more complex than just a
simple list.
Perhaps someone with deeper knowledge of notmuch elisp internals could
fix this bug?
Cheers, Lada
>
> Cheers,
> Michal
--
Ladislav Lhotka, CESNET
PGP Key ID: E74E8C0C
prev parent reply other threads:[~2010-08-24 12:10 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-16 9:28 problem with I-D announcements Ladislav Lhotka
2010-08-16 14:02 ` Michal Sojka
2010-08-16 17:44 ` Ladislav Lhotka
2010-08-24 12:09 ` Ladislav Lhotka [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://notmuchmail.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87r5ho6wko.fsf@cesnet.cz \
--to=lhotka@cesnet.cz \
--cc=notmuch@notmuchmail.org \
--cc=sojkam1@fel.cvut.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).