diff options
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/gnus/ChangeLog | 14 | ||||
-rw-r--r-- | lisp/gnus/gnus-sum.el | 2 | ||||
-rw-r--r-- | lisp/gnus/mm-util.el | 3 | ||||
-rw-r--r-- | lisp/gnus/mm-view.el | 26 |
4 files changed, 32 insertions, 13 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index dce2a5ae07f..43bfc71eb5e 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,17 @@ +2006-03-06 Katsumi Yamaoka <yamaoka@jpl.org> + + * mm-view.el (mm-w3m-cid-retrieve-1): Check carefully whether + handle is multipart when calling it recursively. + (mm-w3m-cid-retrieve): Display warning if retrieving fails. + +2006-03-03 Reiner Steib <Reiner.Steib@gmx.de> + + * mm-util.el (mm-with-unibyte-current-buffer): Change "Emacs 23" + to "Emacs 23 (unicode)" in doc string. + + * gnus-sum.el (gnus-summary-set-display-table): Change "Emacs 23" to + "Emacs 23 (unicode)" in comment. + 2006-03-03 Katsumi Yamaoka <yamaoka@jpl.org> * mm-decode.el (mm-get-part): Don't use diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el index 226a9bd50f1..e4ca47f1ea2 100644 --- a/lisp/gnus/gnus-sum.el +++ b/lisp/gnus/gnus-sum.el @@ -3099,7 +3099,7 @@ display only a single character." ;; We keep TAB as well. (aset table ?\t nil) ;; We nix out any glyphs 127 through 255, or 127 through 159 in - ;; Emacs 23, that are not set already. + ;; Emacs 23 (unicode), that are not set already. (let ((i (if (ignore-errors (= (make-char 'latin-iso8859-1 160) 160)) 160 256))) diff --git a/lisp/gnus/mm-util.el b/lisp/gnus/mm-util.el index e4c87067872..a8c1f3a87a1 100644 --- a/lisp/gnus/mm-util.el +++ b/lisp/gnus/mm-util.el @@ -802,7 +802,8 @@ NOTE: Use this macro with caution in multibyte buffers (it is not worth using this macro in unibyte buffers of course). Use of `(set-buffer-multibyte t)', which is run finally, is generally harmful since it is likely to modify existing data in the buffer. -For instance, it converts \"\\300\\255\" into \"\\255\" in Emacs 23." +For instance, it converts \"\\300\\255\" into \"\\255\" in +Emacs 23 (unicode)." (let ((multibyte (make-symbol "multibyte")) (buffer (make-symbol "buffer"))) `(if mm-emacs-mule diff --git a/lisp/gnus/mm-view.el b/lisp/gnus/mm-view.el index c2b4e19f806..5972a0681a6 100644 --- a/lisp/gnus/mm-view.el +++ b/lisp/gnus/mm-view.el @@ -213,21 +213,25 @@ (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))))) + (when (consp elem) + (when (equal url (mm-handle-id elem)) + (mm-insert-part elem) + (throw 'found-handle (mm-handle-media-type elem))) + (when (and (stringp (car elem)) + (equal "multipart" (mm-handle-media-supertype elem))) + (mm-w3m-cid-retrieve-1 url elem))))) (defun mm-w3m-cid-retrieve (url &rest args) "Insert a content pointed by URL if it has the cid: scheme." (when (string-match "\\`cid:" url) - (catch 'found-handle - (mm-w3m-cid-retrieve-1 (concat "<" (substring url (match-end 0)) ">") - (with-current-buffer w3m-current-buffer - gnus-article-mime-handles))))) + (or (catch 'found-handle + (mm-w3m-cid-retrieve-1 + (setq url (concat "<" (substring url (match-end 0)) ">")) + (with-current-buffer w3m-current-buffer + gnus-article-mime-handles))) + (prog1 + nil + (message "Failed to find \"Content-ID: %s\"" url))))) (defun mm-inline-text-html-render-with-w3m (handle) "Render a text/html part using emacs-w3m." |