shr.el (shr-image-displayer): Protect function against non-existent image source.

This commit is contained in:
Katsumi Yamaoka 2010-11-17 08:28:15 +00:00
parent 40de2c6dd3
commit f8d8a97bda
2 changed files with 17 additions and 13 deletions

View file

@ -1,5 +1,8 @@
2010-11-17 Katsumi Yamaoka <yamaoka@jpl.org>
* shr.el (shr-image-displayer): Protect function against non-existent
image source.
* gnus-art.el (gnus-inhibit-images): New user option.
(gnus-mime-display-single): Don't display image if it is non-nil.

View file

@ -441,19 +441,20 @@ CONTENT-FUNCTION is a function to retrieve an image for a cid url that
is an argument. The function to be returned takes three arguments URL,
START, and END."
`(lambda (url start end)
(if (string-match "\\`cid:" url)
,(when content-function
`(let ((image (funcall ,content-function
(substring url (match-end 0)))))
(when image
(goto-char start)
(shr-put-image image
(prog1
(buffer-substring-no-properties start end)
(delete-region start end))))))
(url-retrieve url 'shr-image-fetched
(list (current-buffer) start end)
t))))
(when url
(if (string-match "\\`cid:" url)
,(when content-function
`(let ((image (funcall ,content-function
(substring url (match-end 0)))))
(when image
(goto-char start)
(shr-put-image image
(prog1
(buffer-substring-no-properties start end)
(delete-region start end))))))
(url-retrieve url 'shr-image-fetched
(list (current-buffer) start end)
t)))))
(defun shr-heading (cont &rest types)
(shr-ensure-paragraph)