[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs/lisp/mail rmailedit.el
From: |
Eli Zaretskii |
Subject: |
[Emacs-diffs] emacs/lisp/mail rmailedit.el |
Date: |
Sat, 07 Feb 2009 12:54:36 +0000 |
CVSROOT: /cvsroot/emacs
Module name: emacs
Changes by: Eli Zaretskii <eliz> 09/02/07 12:54:36
Modified files:
lisp/mail : rmailedit.el
Log message:
(rmail-cease-edit): narrow-to-region before extracting mail message
headers.
Use encode-coding-region instead of insert-buffer-substring for
re-encoding
edited message. Add qp/b64 encoding only after text was encoded.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/mail/rmailedit.el?cvsroot=emacs&r1=1.47&r2=1.48
Patches:
Index: rmailedit.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/mail/rmailedit.el,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -b -r1.47 -r1.48
--- rmailedit.el 1 Feb 2009 03:26:20 -0000 1.47
+++ rmailedit.el 7 Feb 2009 12:54:35 -0000 1.48
@@ -145,34 +145,34 @@
(rmail-swap-buffers-maybe)
+ (narrow-to-region (rmail-msgbeg rmail-current-message)
+ (rmail-msgend rmail-current-message))
+
(setq character-coding (mail-fetch-field "content-transfer-encoding")
is-text-message (rmail-is-text-p)
coding-system (rmail-get-coding-system))
(if character-coding
(setq character-coding (downcase character-coding)))
- (narrow-to-region (rmail-msgbeg rmail-current-message)
- (rmail-msgend rmail-current-message))
(goto-char (point-min))
(search-forward "\n\n")
- (let ((inhibit-read-only t)
- (headers-end-1 (point)))
- (insert-buffer-substring rmail-view-buffer headers-end)
- (delete-region (point) (point-max))
+ (let ((inhibit-read-only t))
+ (let ((data-buffer (current-buffer))
+ (end (copy-marker (point) t)))
+ (with-current-buffer rmail-view-buffer
+ (encode-coding-region headers-end (point-max) coding-system
+ data-buffer))
+ (delete-region end (point-max)))
;; Re-encode the message body in whatever
;; way it was decoded.
(cond
((string= character-coding "quoted-printable")
- (mail-quote-printable-region headers-end-1 (point-max)))
+ (mail-quote-printable-region (point) (point-max)))
((and (string= character-coding "base64") is-text-message)
- (base64-encode-region headers-end-1 (point-max)))
+ (base64-encode-region (point) (point-max)))
((eq character-coding 'uuencode)
- (error "Not supported yet."))
- (t
- (if (or (not coding-system) (not (coding-system-p coding-system)))
- (setq coding-system 'undecided))
- (encode-coding-region headers-end-1 (point-max) coding-system)))
+ (error "uuencoded messages are not supported yet.")))
))
(rmail-set-attribute rmail-edited-attr-index t)
- [Emacs-diffs] emacs/lisp/mail rmailedit.el,
Eli Zaretskii <=
- [Emacs-diffs] emacs/lisp/mail rmailedit.el, Eli Zaretskii, 2009/02/07
- [Emacs-diffs] emacs/lisp/mail rmailedit.el, Glenn Morris, 2009/02/09
- [Emacs-diffs] emacs/lisp/mail rmailedit.el, Richard M. Stallman, 2009/02/13
- [Emacs-diffs] emacs/lisp/mail rmailedit.el, Richard M. Stallman, 2009/02/14
- [Emacs-diffs] emacs/lisp/mail rmailedit.el, Eli Zaretskii, 2009/02/21