Subject: Re: bug#9632: wrong-type-argument stringp mailcap-save-binary-file

From: Lars Magne Ingebrigtsen <[email-masked]>
Date: Sat, 07 Jan 2012 02:04:13 +0100

Dave Abrahams <[email-masked]> writes:

>   gnus-completing-read("Viewer" (mailcap-save-binary-file "/usr/bin/open %s"))
>   mm-interactively-view-part((#<buffer  *mm*<3>> ("application/octet-stream") base64 nil ("attachment" (filename . "0F31DE07 - Personal.asc")) nil nil nil))
>   gnus-mime-view-part()

I'm unable to reproduce the bug.

Looking at the code, it seems like the following is returning
something...  something doesn't like:

(mapcar (lambda (i) (cdr (assoc 'viewer i)))
        (mailcap-mime-info "application/octet-stream" 'all))
=> (mailcap-save-binary-file)

(Only that yours includes the "open" thing, too.  Hm...

  string-match("" mailcap-save-binary-file)

[...]

  ido-set-matches-1(("/usr/bin/open %s" mailcap-save-binary-file) t)

Oh, you're triggering ido...  Right:

  gnus-ido-completing-read("Viewer: " (mailcap-save-binary-file "/usr/bin/open %s") nil nil nil nil)
  gnus-completing-read("Viewer" (mailcap-save-binary-file "/usr/bin/open %s"))

And ido doesn't work on symbols.

Fix in No Gnus.

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/