[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs/lisp ChangeLog mail/rmail.el
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] emacs/lisp ChangeLog mail/rmail.el |
Date: |
Sun, 01 Feb 2009 03:39:40 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Changes by: Stefan Monnier <monnier> 09/02/01 03:39:39
Modified files:
lisp : ChangeLog
lisp/mail : rmail.el
Log message:
(rmail-view-buffer): Make buffer-local.
(rmail-select-summary, rmail-perm-variables, rmail-redecode-body)
(rmail-undelete-previous-message, rmail-mark-message)
(rmail-speedbar-buttons): Use with-current-buffer.
(rmail-mode-map): Move initialization into declaration.
(rmail-swap-buffers, rmail-unfontify-buffer-function)
(rmail-fontify-message): Use restore-buffer-modified-p.
(rmail-expunge-and-save): Don't swap buffer.
(rmail-get-header, rmail-set-header, rmail-set-attribute)
(rmail-apply-in-message): Swap save-excursion and save-restriction.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ChangeLog?cvsroot=emacs&r1=1.15238&r2=1.15239
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/mail/rmail.el?cvsroot=emacs&r1=1.488&r2=1.489
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.15238
retrieving revision 1.15239
diff -u -b -r1.15238 -r1.15239
--- ChangeLog 1 Feb 2009 03:28:33 -0000 1.15238
+++ ChangeLog 1 Feb 2009 03:39:37 -0000 1.15239
@@ -1,5 +1,16 @@
2009-02-01 Stefan Monnier <address@hidden>
+ * mail/rmail.el (rmail-view-buffer): Make buffer-local.
+ (rmail-select-summary, rmail-perm-variables, rmail-redecode-body)
+ (rmail-undelete-previous-message, rmail-mark-message)
+ (rmail-speedbar-buttons): Use with-current-buffer.
+ (rmail-mode-map): Move initialization into declaration.
+ (rmail-swap-buffers, rmail-unfontify-buffer-function)
+ (rmail-fontify-message): Use restore-buffer-modified-p.
+ (rmail-expunge-and-save): Don't swap buffer.
+ (rmail-get-header, rmail-set-header, rmail-set-attribute)
+ (rmail-apply-in-message): Swap save-excursion and save-restriction.
+
* mail/rmailsort.el (rmail-sort-messages): Use car-less-than-car
if possible.
Index: mail/rmail.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/mail/rmail.el,v
retrieving revision 1.488
retrieving revision 1.489
diff -u -b -r1.488 -r1.489
--- mail/rmail.el 31 Jan 2009 18:52:36 -0000 1.488
+++ mail/rmail.el 1 Feb 2009 03:39:39 -0000 1.489
@@ -563,6 +563,7 @@
(defvar rmail-view-buffer nil
"Buffer which holds RMAIL message for MIME displaying.")
+(make-variable-buffer-local 'rmail-view-buffer)
(put 'rmail-view-buffer 'permanent-local t)
;; `Sticky' default variables.
@@ -675,10 +676,6 @@
The first parenthesized expression should match the MIME-charset name.")
-;;; Regexp matching the delimiter of messages in UNIX mail format
-;;; (UNIX From lines), minus the initial ^. Note that if you change
-;;; this expression, you must change the code in rmail-nuke-pinhead-header
-;;; that knows the exact ordering of the \\( \\) subexpressions.
(defvar rmail-unix-mail-delimiter
(let ((time-zone-regexp
(concat "\\([A-Z]?[A-Z]?[A-Z][A-Z]\\( DST\\)?"
@@ -729,7 +726,10 @@
"\\(remote from .*\\)?"
"\n"))
- nil)
+ "Regexp matching the delimiter of messages in UNIX mail format
+\(UNIX From lines), minus the initial ^. Note that if you change
+this expression, you must change the code in rmail-nuke-pinhead-header
+that knows the exact ordering of the \\( \\) subexpressions.")
(defvar rmail-font-lock-keywords
;; These are all matched case-insensitively.
@@ -774,8 +774,7 @@
(let ((rmail-total-messages total))
,@body))
(select-window window))))
- (save-excursion
- (set-buffer rmail-summary-buffer)
+ (with-current-buffer rmail-summary-buffer
(let ((rmail-total-messages total))
,@body)))
(rmail-maybe-display-summary)))
@@ -843,15 +842,15 @@
(switch-to-buffer
(let ((enable-local-variables nil))
(find-file-noselect file-name))))
- ;; Insure that the collection and view buffers are in sync and
- ;; insure that a message is not being edited.
+ ;; Ensure that the collection and view buffers are in sync and
+ ;; ensure that a message is not being edited.
(if (eq major-mode 'rmail-mode)
(rmail-swap-buffers-maybe))
(if (eq major-mode 'rmail-edit-mode)
(error "Exit Rmail Edit mode before getting new mail"))
(or (and existed (> (buffer-size) 0))
(setq run-mail-hook t))
- ;; Insure that the Rmail file is in mbox format, the buffer is in
+ ;; Ensure that the Rmail file is in mbox format, the buffer is in
;; Rmail mode and has been scanned to find all the messages
;; (setting the global message variables in the process).
(rmail-convert-file-maybe)
@@ -942,184 +941,184 @@
;;; Set up Rmail mode keymaps
-(defvar rmail-mode-map nil)
-(if rmail-mode-map
- nil
- (setq rmail-mode-map (make-keymap))
- (suppress-keymap rmail-mode-map)
- (define-key rmail-mode-map "a" 'rmail-add-label)
- (define-key rmail-mode-map "b" 'rmail-bury)
- (define-key rmail-mode-map "c" 'rmail-continue)
- (define-key rmail-mode-map "d" 'rmail-delete-forward)
- (define-key rmail-mode-map "\C-d" 'rmail-delete-backward)
- (define-key rmail-mode-map "e" 'rmail-edit-current-message)
- (define-key rmail-mode-map "f" 'rmail-forward)
- (define-key rmail-mode-map "g" 'rmail-get-new-mail)
- (define-key rmail-mode-map "h" 'rmail-summary)
- (define-key rmail-mode-map "i" 'rmail-input)
- (define-key rmail-mode-map "j" 'rmail-show-message-maybe)
- (define-key rmail-mode-map "k" 'rmail-kill-label)
- (define-key rmail-mode-map "l" 'rmail-summary-by-labels)
- (define-key rmail-mode-map "\e\C-h" 'rmail-summary)
- (define-key rmail-mode-map "\e\C-l" 'rmail-summary-by-labels)
- (define-key rmail-mode-map "\e\C-r" 'rmail-summary-by-recipients)
- (define-key rmail-mode-map "\e\C-s" 'rmail-summary-by-regexp)
- (define-key rmail-mode-map "\e\C-t" 'rmail-summary-by-topic)
- (define-key rmail-mode-map "m" 'rmail-mail)
- (define-key rmail-mode-map "\em" 'rmail-retry-failure)
- (define-key rmail-mode-map "n" 'rmail-next-undeleted-message)
- (define-key rmail-mode-map "\en" 'rmail-next-message)
- (define-key rmail-mode-map "\e\C-n" 'rmail-next-labeled-message)
- (define-key rmail-mode-map "o" 'rmail-output)
- (define-key rmail-mode-map "\C-o" 'rmail-output-as-seen)
- (define-key rmail-mode-map "p" 'rmail-previous-undeleted-message)
- (define-key rmail-mode-map "\ep" 'rmail-previous-message)
- (define-key rmail-mode-map "\e\C-p" 'rmail-previous-labeled-message)
- (define-key rmail-mode-map "q" 'rmail-quit)
- (define-key rmail-mode-map "r" 'rmail-reply)
-;; I find I can't live without the default M-r command -- rms.
-;; (define-key rmail-mode-map "\er" 'rmail-search-backwards)
- (define-key rmail-mode-map "s" 'rmail-expunge-and-save)
- (define-key rmail-mode-map "\es" 'rmail-search)
- (define-key rmail-mode-map "t" 'rmail-toggle-header)
- (define-key rmail-mode-map "u" 'rmail-undelete-previous-message)
- (define-key rmail-mode-map "w" 'rmail-output-body-to-file)
- (define-key rmail-mode-map "\C-c\C-w" 'rmail-widen)
- (define-key rmail-mode-map "x" 'rmail-expunge)
- (define-key rmail-mode-map "." 'rmail-beginning-of-message)
- (define-key rmail-mode-map "/" 'rmail-end-of-message)
- (define-key rmail-mode-map "<" 'rmail-first-message)
- (define-key rmail-mode-map ">" 'rmail-last-message)
- (define-key rmail-mode-map " " 'scroll-up)
- (define-key rmail-mode-map "\177" 'scroll-down)
- (define-key rmail-mode-map "?" 'describe-mode)
- (define-key rmail-mode-map "\C-c\C-s\C-d" 'rmail-sort-by-date)
- (define-key rmail-mode-map "\C-c\C-s\C-s" 'rmail-sort-by-subject)
- (define-key rmail-mode-map "\C-c\C-s\C-a" 'rmail-sort-by-author)
- (define-key rmail-mode-map "\C-c\C-s\C-r" 'rmail-sort-by-recipient)
- (define-key rmail-mode-map "\C-c\C-s\C-c" 'rmail-sort-by-correspondent)
- (define-key rmail-mode-map "\C-c\C-s\C-l" 'rmail-sort-by-lines)
- (define-key rmail-mode-map "\C-c\C-s\C-k" 'rmail-sort-by-labels)
- (define-key rmail-mode-map "\C-c\C-n" 'rmail-next-same-subject)
- (define-key rmail-mode-map "\C-c\C-p" 'rmail-previous-same-subject)
- )
+(defvar rmail-mode-map
+ (let ((map (make-keymap)))
+ (suppress-keymap map)
+ (define-key map "a" 'rmail-add-label)
+ (define-key map "b" 'rmail-bury)
+ (define-key map "c" 'rmail-continue)
+ (define-key map "d" 'rmail-delete-forward)
+ (define-key map "\C-d" 'rmail-delete-backward)
+ (define-key map "e" 'rmail-edit-current-message)
+ (define-key map "f" 'rmail-forward)
+ (define-key map "g" 'rmail-get-new-mail)
+ (define-key map "h" 'rmail-summary)
+ (define-key map "i" 'rmail-input)
+ (define-key map "j" 'rmail-show-message-maybe)
+ (define-key map "k" 'rmail-kill-label)
+ (define-key map "l" 'rmail-summary-by-labels)
+ (define-key map "\e\C-h" 'rmail-summary)
+ (define-key map "\e\C-l" 'rmail-summary-by-labels)
+ (define-key map "\e\C-r" 'rmail-summary-by-recipients)
+ (define-key map "\e\C-s" 'rmail-summary-by-regexp)
+ (define-key map "\e\C-t" 'rmail-summary-by-topic)
+ (define-key map "m" 'rmail-mail)
+ (define-key map "\em" 'rmail-retry-failure)
+ (define-key map "n" 'rmail-next-undeleted-message)
+ (define-key map "\en" 'rmail-next-message)
+ (define-key map "\e\C-n" 'rmail-next-labeled-message)
+ (define-key map "o" 'rmail-output)
+ (define-key map "\C-o" 'rmail-output-as-seen)
+ (define-key map "p" 'rmail-previous-undeleted-message)
+ (define-key map "\ep" 'rmail-previous-message)
+ (define-key map "\e\C-p" 'rmail-previous-labeled-message)
+ (define-key map "q" 'rmail-quit)
+ (define-key map "r" 'rmail-reply)
+ ;; I find I can't live without the default M-r command -- rms.
+ ;; (define-key rmail-mode-map "\er" 'rmail-search-backwards)
+ (define-key map "s" 'rmail-expunge-and-save)
+ (define-key map "\es" 'rmail-search)
+ (define-key map "t" 'rmail-toggle-header)
+ (define-key map "u" 'rmail-undelete-previous-message)
+ (define-key map "w" 'rmail-output-body-to-file)
+ (define-key map "\C-c\C-w" 'rmail-widen)
+ (define-key map "x" 'rmail-expunge)
+ (define-key map "." 'rmail-beginning-of-message)
+ (define-key map "/" 'rmail-end-of-message)
+ (define-key map "<" 'rmail-first-message)
+ (define-key map ">" 'rmail-last-message)
+ (define-key map " " 'scroll-up)
+ (define-key map "\177" 'scroll-down)
+ (define-key map "?" 'describe-mode)
+ (define-key map "\C-c\C-s\C-d" 'rmail-sort-by-date)
+ (define-key map "\C-c\C-s\C-s" 'rmail-sort-by-subject)
+ (define-key map "\C-c\C-s\C-a" 'rmail-sort-by-author)
+ (define-key map "\C-c\C-s\C-r" 'rmail-sort-by-recipient)
+ (define-key map "\C-c\C-s\C-c" 'rmail-sort-by-correspondent)
+ (define-key map "\C-c\C-s\C-l" 'rmail-sort-by-lines)
+ (define-key map "\C-c\C-s\C-k" 'rmail-sort-by-labels)
+ (define-key map "\C-c\C-n" 'rmail-next-same-subject)
+ (define-key map "\C-c\C-p" 'rmail-previous-same-subject)
-(define-key rmail-mode-map [menu-bar] (make-sparse-keymap))
-(define-key rmail-mode-map [menu-bar classify]
+ (define-key map [menu-bar] (make-sparse-keymap))
+
+ (define-key map [menu-bar classify]
(cons "Classify" (make-sparse-keymap "Classify")))
-(define-key rmail-mode-map [menu-bar classify input-menu]
+ (define-key map [menu-bar classify input-menu]
nil)
-(define-key rmail-mode-map [menu-bar classify output-menu]
+ (define-key map [menu-bar classify output-menu]
nil)
-(define-key rmail-mode-map [menu-bar classify output-body]
+ (define-key map [menu-bar classify output-body]
'("Output body to file..." . rmail-output-body-to-file))
-(define-key rmail-mode-map [menu-bar classify output-inbox]
+ (define-key map [menu-bar classify output-inbox]
'("Output..." . rmail-output))
-(define-key rmail-mode-map [menu-bar classify output]
+ (define-key map [menu-bar classify output]
'("Output as seen..." . rmail-output-as-seen))
-(define-key rmail-mode-map [menu-bar classify kill-label]
+ (define-key map [menu-bar classify kill-label]
'("Kill Label..." . rmail-kill-label))
-(define-key rmail-mode-map [menu-bar classify add-label]
+ (define-key map [menu-bar classify add-label]
'("Add Label..." . rmail-add-label))
-(define-key rmail-mode-map [menu-bar summary]
+ (define-key map [menu-bar summary]
(cons "Summary" (make-sparse-keymap "Summary")))
-(define-key rmail-mode-map [menu-bar summary senders]
+ (define-key map [menu-bar summary senders]
'("By Senders..." . rmail-summary-by-senders))
-(define-key rmail-mode-map [menu-bar summary labels]
+ (define-key map [menu-bar summary labels]
'("By Labels..." . rmail-summary-by-labels))
-(define-key rmail-mode-map [menu-bar summary recipients]
+ (define-key map [menu-bar summary recipients]
'("By Recipients..." . rmail-summary-by-recipients))
-(define-key rmail-mode-map [menu-bar summary topic]
+ (define-key map [menu-bar summary topic]
'("By Topic..." . rmail-summary-by-topic))
-(define-key rmail-mode-map [menu-bar summary regexp]
+ (define-key map [menu-bar summary regexp]
'("By Regexp..." . rmail-summary-by-regexp))
-(define-key rmail-mode-map [menu-bar summary all]
+ (define-key map [menu-bar summary all]
'("All" . rmail-summary))
-(define-key rmail-mode-map [menu-bar mail]
+ (define-key map [menu-bar mail]
(cons "Mail" (make-sparse-keymap "Mail")))
-(define-key rmail-mode-map [menu-bar mail rmail-get-new-mail]
+ (define-key map [menu-bar mail rmail-get-new-mail]
'("Get New Mail" . rmail-get-new-mail))
-(define-key rmail-mode-map [menu-bar mail lambda]
+ (define-key map [menu-bar mail lambda]
'("----"))
-(define-key rmail-mode-map [menu-bar mail continue]
+ (define-key map [menu-bar mail continue]
'("Continue" . rmail-continue))
-(define-key rmail-mode-map [menu-bar mail resend]
+ (define-key map [menu-bar mail resend]
'("Re-send..." . rmail-resend))
-(define-key rmail-mode-map [menu-bar mail forward]
+ (define-key map [menu-bar mail forward]
'("Forward" . rmail-forward))
-(define-key rmail-mode-map [menu-bar mail retry]
+ (define-key map [menu-bar mail retry]
'("Retry" . rmail-retry-failure))
-(define-key rmail-mode-map [menu-bar mail reply]
+ (define-key map [menu-bar mail reply]
'("Reply" . rmail-reply))
-(define-key rmail-mode-map [menu-bar mail mail]
+ (define-key map [menu-bar mail mail]
'("Mail" . rmail-mail))
-(define-key rmail-mode-map [menu-bar delete]
+ (define-key map [menu-bar delete]
(cons "Delete" (make-sparse-keymap "Delete")))
-(define-key rmail-mode-map [menu-bar delete expunge/save]
+ (define-key map [menu-bar delete expunge/save]
'("Expunge/Save" . rmail-expunge-and-save))
-(define-key rmail-mode-map [menu-bar delete expunge]
+ (define-key map [menu-bar delete expunge]
'("Expunge" . rmail-expunge))
-(define-key rmail-mode-map [menu-bar delete undelete]
+ (define-key map [menu-bar delete undelete]
'("Undelete" . rmail-undelete-previous-message))
-(define-key rmail-mode-map [menu-bar delete delete]
+ (define-key map [menu-bar delete delete]
'("Delete" . rmail-delete-forward))
-(define-key rmail-mode-map [menu-bar move]
+ (define-key map [menu-bar move]
(cons "Move" (make-sparse-keymap "Move")))
-(define-key rmail-mode-map [menu-bar move search-back]
+ (define-key map [menu-bar move search-back]
'("Search Back..." . rmail-search-backwards))
-(define-key rmail-mode-map [menu-bar move search]
+ (define-key map [menu-bar move search]
'("Search..." . rmail-search))
-(define-key rmail-mode-map [menu-bar move previous]
+ (define-key map [menu-bar move previous]
'("Previous Nondeleted" . rmail-previous-undeleted-message))
-(define-key rmail-mode-map [menu-bar move next]
+ (define-key map [menu-bar move next]
'("Next Nondeleted" . rmail-next-undeleted-message))
-(define-key rmail-mode-map [menu-bar move last]
+ (define-key map [menu-bar move last]
'("Last" . rmail-last-message))
-(define-key rmail-mode-map [menu-bar move first]
+ (define-key map [menu-bar move first]
'("First" . rmail-first-message))
-(define-key rmail-mode-map [menu-bar move previous]
+ (define-key map [menu-bar move previous]
'("Previous" . rmail-previous-message))
-(define-key rmail-mode-map [menu-bar move next]
+ (define-key map [menu-bar move next]
'("Next" . rmail-next-message))
+ map))
+
;; Rmail toolbar
(defvar rmail-tool-bar-map
(let ((map (make-sparse-keymap)))
@@ -1271,7 +1270,7 @@
buffer-file-coding-system)))
(buffer-swap-text rmail-view-buffer)
(setq buffer-file-coding-system coding)
- (set-buffer-modified-p modp)))
+ (restore-buffer-modified-p modp)))
(defun rmail-buffers-swapped-p ()
"Return non-nil if the message collection is in `rmail-view-buffer'."
@@ -1303,10 +1302,7 @@
(make-local-variable 'rmail-buffer)
(setq rmail-buffer (current-buffer))
(set-buffer-multibyte nil)
- (make-local-variable 'rmail-view-buffer)
- (save-excursion
- (setq rmail-view-buffer (rmail-generate-viewer-buffer))
- (set-buffer rmail-view-buffer)
+ (with-current-buffer (setq rmail-view-buffer (rmail-generate-viewer-buffer))
(setq buffer-undo-list t)
(set-buffer-multibyte t)
;; Force C-x C-s write Unix EOLs.
@@ -1391,7 +1387,8 @@
(interactive)
(set-buffer rmail-buffer)
(rmail-expunge t)
- (rmail-swap-buffers-maybe)
+ ;; No need to swap buffers: rmail-write-region-annotate takes care of it.
+ ;; (rmail-swap-buffers-maybe)
(save-buffer)
(if (rmail-summary-exists)
(rmail-select-summary (set-buffer-modified-p nil)))
@@ -1944,7 +1941,7 @@
limit)
;; Detect an empty inbox file.
(unless (= start (point-max))
- ;; Scan the new messages to establish a count and to insure that
+ ;; Scan the new messages to establish a count and to ensure that
;; an attribute header is present.
(while (looking-at "From ")
;; Determine if a new attribute header needs to be added to
@@ -1977,9 +1974,9 @@
(save-excursion
;; ... so it is ok to go to a different buffer.
(if (rmail-buffers-swapped-p) (set-buffer rmail-view-buffer))
+ (save-excursion
(save-restriction
(widen)
- (save-excursion
(goto-char msgbeg)
(setq end (search-forward "\n\n" nil t))
(if end
@@ -2001,9 +1998,9 @@
(save-excursion
;; ... so it is ok to go to a different buffer.
(if (rmail-buffers-swapped-p) (set-buffer rmail-view-buffer))
+ (save-excursion
(save-restriction
(widen)
- (save-excursion
(goto-char msgbeg)
(setq end (search-forward "\n\n" nil t))
(if end (setq end (1- end)))
@@ -2117,9 +2114,9 @@
(save-excursion
;; ... so it is ok to go to a different buffer.
(if (rmail-buffers-swapped-p) (set-buffer rmail-view-buffer))
+ (save-excursion
(save-restriction
(widen)
- (save-excursion
;; Determine if the current state is the desired state.
(goto-char msgbeg)
(save-excursion
@@ -2204,13 +2201,12 @@
(save-excursion
;; ... so it is ok to go to a different buffer.
(if (rmail-buffers-swapped-p) (set-buffer rmail-view-buffer))
+ (save-excursion
(save-restriction
(widen)
- (save-excursion
(goto-char msgbeg)
- (save-restriction
(narrow-to-region msgbeg msgend)
- (apply function args)))))))))
+ (apply function args))))))))
(defun rmail-widen-to-current-msgbeg (function)
"Call FUNCTION with point at start of internal data of current message.
@@ -2462,6 +2458,7 @@
(interactive "p")
(or (eq major-mode 'rmail-mode)
(switch-to-buffer rmail-buffer))
+ ;; FIXME: Why do we swap the raw data back in?
(rmail-swap-buffers-maybe)
(rmail-maybe-set-message-counters)
(widen)
@@ -2675,8 +2672,7 @@
iso-8859, koi8-r, etc."
(interactive "zCoding system for re-decoding this message: ")
(when (not rmail-enable-mime)
- (save-excursion
- (set-buffer rmail-buffer)
+ (with-current-buffer rmail-buffer
(rmail-swap-buffers-maybe)
(save-restriction
(widen)
@@ -3109,8 +3105,7 @@
(rmail-show-message-maybe msg))
(rmail-set-attribute rmail-deleted-attr-index nil)
(if (rmail-summary-exists)
- (save-excursion
- (set-buffer rmail-summary-buffer)
+ (with-current-buffer rmail-summary-buffer
(rmail-summary-mark-undeleted msg)))
(rmail-maybe-display-summary))))
@@ -3407,8 +3402,7 @@
This is use in the send-actions for message buffers.
MSGNUM-LIST is a list of the form (MSGNUM)
which is an element of rmail-msgref-vector."
- (save-excursion
- (set-buffer buffer)
+ (with-current-buffer buffer
(if (car msgnum-list)
(rmail-set-attribute attribute t (car msgnum-list)))))
@@ -3816,7 +3810,8 @@
(remove-hook 'rmail-show-message-hook 'rmail-fontify-message t)
(remove-text-properties (point-min) (point-max) '(rmail-fontified nil))
(font-lock-default-unfontify-buffer)
- (and (not modified) (buffer-modified-p) (set-buffer-modified-p nil)))))
+ (and (not modified) (buffer-modified-p)
+ (restore-buffer-modified-p nil)))))
(defun rmail-fontify-message ()
;; Fontify the current message if it is not already fontified.
@@ -3829,7 +3824,8 @@
(save-match-data
(add-text-properties (point-min) (point-max) '(rmail-fontified t))
(font-lock-fontify-region (point-min) (point-max))
- (and (not modified) (buffer-modified-p) (set-buffer-modified-p
nil)))))))
+ (and (not modified) (buffer-modified-p)
+ (restore-buffer-modified-p nil)))))))
;;; Speedbar support for RMAIL files.
(eval-when-compile (require 'speedbar))
@@ -3875,8 +3871,7 @@
Under Folders: Click a name to read it, or on the <M> to move the
current message into that RMAIL folder."
(let ((from nil))
- (save-excursion
- (set-buffer buffer)
+ (with-current-buffer buffer
(goto-char (point-min))
(if (not (re-search-forward "^Reply-To: " nil t))
(if (not (re-search-forward "^From:? " nil t))
@@ -3896,7 +3891,7 @@
'rmail-speedbar-button 'rmail-reply))
(insert "Folders:\n")
(let* ((case-fold-search nil)
- (df (directory-files (save-excursion (set-buffer buffer)
+ (df (directory-files (with-current-buffer buffer
default-directory)
nil rmail-speedbar-match-folder-regexp)))
(while df
- [Emacs-diffs] emacs/lisp ChangeLog mail/rmail.el, Stefan Monnier, 2009/01/23
- [Emacs-diffs] emacs/lisp ChangeLog mail/rmail.el, Glenn Morris, 2009/01/23
- [Emacs-diffs] emacs/lisp ChangeLog mail/rmail.el, Glenn Morris, 2009/01/25
- [Emacs-diffs] emacs/lisp ChangeLog mail/rmail.el, Glenn Morris, 2009/01/27
- [Emacs-diffs] emacs/lisp ChangeLog mail/rmail.el, Glenn Morris, 2009/01/27
- [Emacs-diffs] emacs/lisp ChangeLog mail/rmail.el, Glenn Morris, 2009/01/30
- [Emacs-diffs] emacs/lisp ChangeLog mail/rmail.el,
Stefan Monnier <=