* nnsoup.el: Use expand-file-name throughtout.
[gnus] / lisp / gnus-art.el
index 157ed52..0a4a183 100644 (file)
@@ -198,6 +198,8 @@ regexp.  If it matches, the text in question is not a signature."
   :type 'sexp
   :group 'gnus-article-hiding)
 
+;; Fixme: This isn't the right thing for mixed graphical and and
+;; non-graphical frames in a session.
 (defcustom gnus-article-x-face-command
   (if (and (fboundp 'image-type-available-p)
           (image-type-available-p 'xbm))
@@ -1475,6 +1477,10 @@ If PROMPT (the prefix), prompt for a coding system to use."
     (forward-line 1)
     (save-restriction
       (narrow-to-region (point) (point-max))
+      (when (and (eq mail-parse-charset 'gnus-decoded)
+                (eq (mm-body-7-or-8) '8bit))
+       ;; The text code could have been decoded.
+       (setq charset mail-parse-charset))
       (when (and (or (not ctl)
                     (equal (car ctl) "text/plain"))
                 (not format)) ;; article with format will decode later.
@@ -3543,9 +3549,6 @@ Argument LINES specifies lines to be scrolled up."
   (move-to-window-line -1)
   (if (save-excursion
        (end-of-line)
-       ;; Redisplay before the visibility test; else we don't DTRT
-       ;; with Emacs 21 images, for instance.
-       (sit-for 0)
        (and (pos-visible-in-window-p)  ;Not continuation line.
             (eobp)))
       ;; Nothing in this page.
@@ -4030,7 +4033,7 @@ groups."
   "Exit the article editing without updating."
   (interactive)
   ;; We remove all text props from the article buffer.
-  (let ((buf (format "%s" (buffer-string)))
+  (let ((buf (buffer-substring-no-properties (point-min) (point-max)))
        (curbuf (current-buffer))
        (p (point))
        (window-start (window-start)))