From: Reiner Steib <reinersteib+gmane@imap.cc>
Subject: mm-w3m-cid-retrieve-1 -> mm-handle-media-supertype called with nil arg
Date: Fri, 03 Mar 2006 16:23:04 +0100 [thread overview]
Message-ID: <v9hd6fimcn.fsf@marauder.physik.uni-ulm.de> (raw)
In-Reply-To: <v94q2jmhab.fsf@marauder.physik.uni-ulm.de>
Hi,
`w3m-safe-toggle-inline-image' inside a digest mime part fails because
mm-handle-media-supertype called with a nil argument.
To reproduce:
- Fetch <news:v94q2jmhab.fsf@marauder.physik.uni-ulm.de> from
gmane.test e.g. with `^' on this posting.
(or use: <nntp://news.gmane.org/gmane.test/2815>)
- Press `C-d' (`gnus-summary-enter-digest-group'), you'll get:
<* alternative> html image inline cid
<1 text>
<2.* related>
<2.1 html>
<2.2 png> back.png
- Select part 2.1 with
(setq mm-text-html-renderer 'w3m)
- With point on "altern.", press `t'
(w3m-safe-toggle-inline-image).
I get:
,----
| Debugger entered--Lisp error: (wrong-type-argument stringp nil)
| string-match("/" nil 0)
| split-string(nil "/")
| mm-w3m-cid-retrieve-1("<part1.01020309.03090509@imap.cc>"
| (#<buffer *mm*<7>> ("text/html" (charset . "iso-8859-1")) nil
| (lambda nil (let ... ... ...)) nil nil nil nil))
| byte-code("[...] [url w3m-current-buffer gnus-article-mime-handles
| mm-w3m-cid-retrieve-1 "<" 0 nil ">"] 5)
| mm-w3m-cid-retrieve("cid:part1.01020309.03090509@imap.cc" raw nil)
| w3m-cid-retrieve("cid:part1.01020309.03090509@imap.cc" raw nil)
| w3m-retrieve("cid:part1.01020309.03090509@imap.cc" raw nil nil nil
| ((lambda (&rest --cl-rest--) (apply
| ... ... ... ... ... ... ... ... ... --cl-rest--)) (lambda (&rest
| --cl-rest--) (apply
| ... ... ... ... ... ... ... ... ... --cl-rest--)) (lambda (&rest
| --cl-rest--) (apply ... ... ... ... ... --cl-rest--))))
| w3m-create-image("cid:part1.01020309.03090509@imap.cc" nil nil nil
| ((lambda (&rest --cl-rest--) (apply
| ... ... ... ... ... --cl-rest--))))
| w3m-toggle-inline-image(nil nil)
| w3m-safe-toggle-inline-image(nil)
| call-interactively(w3m-safe-toggle-inline-image)
`----
- To get better debug output eval:
(load "mm-view.el")
(require 'cl)
Repeat `w3m-safe-toggle-inline-image':
,----
| Debugger entered--Lisp error: (wrong-type-argument stringp nil)
| string-match("/" nil 0)
| split-string(nil "/")
| mm-handle-media-supertype(nil)
| (equal "multipart" (mm-handle-media-supertype elem))
`----
The problem is that `mm-handle-media-supertype' is called with a nil
`elem' argument:
(defun mm-w3m-cid-retrieve-1 (url handle)
(dolist (elem handle)
(when (listp elem)
(if (equal url (mm-handle-id elem))
(progn
(mm-insert-part elem)
(throw 'found-handle (mm-handle-media-type elem))))
(if (equal "multipart" (mm-handle-media-supertype elem))
(mm-w3m-cid-retrieve-1 url elem)))))
(defsubst mm-handle-media-supertype (handle)
(car (split-string (mm-handle-media-type handle) "/")))
Using `w3m-safe-toggle-inline-image' without
`gnus-summary-enter-digest-group' didn't trigger the bug.
Bye, Reiner.
--
,,,
(o o)
---ooO-(_)-Ooo--- | PGP key available | http://rsteib.home.pages.de/
next parent reply other threads:[~2006-03-03 15:23 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <v94q2jmhab.fsf@marauder.physik.uni-ulm.de>
2006-03-03 15:23 ` Reiner Steib [this message]
2006-03-06 6:53 ` Katsumi Yamaoka
2006-03-06 13:56 ` Reiner Steib
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=v9hd6fimcn.fsf@marauder.physik.uni-ulm.de \
--to=reinersteib+gmane@imap.cc \
--cc=Reiner.Steib@gmx.de \
/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.
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 NNTP newsgroup(s).