From 14ce5fc25c90198803c4b35ad03c8debf05aaed4 Mon Sep 17 00:00:00 2001 From: Katsumi Yamaoka Date: Tue, 9 Sep 2008 06:23:40 +0000 Subject: * gnus-art.el (gnus-mime-strip-charset-parameters): Remove. (gnus-mime-set-charset-parameters): New function. (gnus-mime-view-part-as-charset): Use it to correctly display part specifying wrong charset. --- lisp/gnus/ChangeLog | 7 +++++++ lisp/gnus/gnus-art.el | 13 ++++++++----- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 908c3bc33a..7fdda1bceb 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,10 @@ +2008-09-09 Katsumi Yamaoka + + * gnus-art.el (gnus-mime-strip-charset-parameters): Remove. + (gnus-mime-set-charset-parameters): New function. + (gnus-mime-view-part-as-charset): Use it to correctly display part + specifying wrong charset. + 2008-09-08 David Engster * nnmairix.el (nnmairix-create-server-and-default-group): Require match diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index a8ca34386f..1438842a01 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el @@ -5138,8 +5138,9 @@ Compressed files like .gz and .bz2 are decompressed." (mm-string-to-multibyte contents))) (goto-char b))))) -(defun gnus-mime-strip-charset-parameters (handle) - "Strip charset parameters from HANDLE." +(defun gnus-mime-set-charset-parameters (handle) + "Set charset to parameters in HANDLE. +The value of `gnus-newsgroup-charset' is used as a charset." (if (stringp (car handle)) (mapc #'gnus-mime-strip-charset-parameters (cdr handle)) (let* ((type (mm-handle-type (if (equal (mm-handle-media-type handle) @@ -5150,8 +5151,10 @@ Compressed files like .gz and .bz2 are decompressed." (mm-handle-cache handle)) handle))) (charset (assq 'charset (cdr type)))) - (when charset - (delq charset type))))) + (if charset + (setcdr charset (symbol-name gnus-newsgroup-charset)) + (setcdr type (cons (cons 'charset (symbol-name gnus-newsgroup-charset)) + (cdr type))))))) (defun gnus-mime-view-part-as-charset (&optional handle arg) "Insert the MIME part under point into the current buffer using the @@ -5172,7 +5175,7 @@ specified charset." (mm-read-coding-system "Charset: ")))) (if (mm-handle-undisplayer handle) (mm-remove-part handle))) - (gnus-mime-strip-charset-parameters handle) + (gnus-mime-set-charset-parameters handle) (when (and (consp (setq form (cdr-safe fun))) (setq form (ignore-errors (assq 'gnus-mime-display-alternative form))) -- cgit v1.2.3