]> git.eshelyaron.com Git - emacs.git/commitdiff
* files.el (basic-save-buffer-1): Don't set buffer-file-coding-system-explicit.
authorChong Yidong <cyd@gnu.org>
Sun, 10 Feb 2013 03:08:21 +0000 (11:08 +0800)
committerChong Yidong <cyd@gnu.org>
Sun, 10 Feb 2013 03:08:21 +0000 (11:08 +0800)
Fixes: debbugs:4533
lisp/ChangeLog
lisp/files.el
lisp/international/mule.el

index cc5aa18d27f20adfa7cae6f55708e8f3dcb6838a..c0a91bb75dc6e674efc03f1bd23db510c457a524 100644 (file)
@@ -1,5 +1,8 @@
 2013-02-10  Chong Yidong  <cyd@gnu.org>
 
+       * files.el (basic-save-buffer-1): Do not set
+       buffer-file-coding-system-explicit (Bug#4533).
+
        * mail/emacsbug.el (report-emacs-bug): Change binding of
        report-emacs-bug-insert-to-mailer to C-c M-i (Bug#13510).
 
index 9fca70d36f72d787791560eb0390d5508c331598..c9e5d2763feffd2c1666f41a58ec71d2dba9a239 100644 (file)
@@ -4646,9 +4646,7 @@ Before and after saving the buffer, this function runs
            (basic-save-buffer-2))
        (basic-save-buffer-2))
     (if buffer-file-coding-system-explicit
-       (setcar buffer-file-coding-system-explicit last-coding-system-used)
-      (setq buffer-file-coding-system-explicit
-           (cons last-coding-system-used nil)))))
+       (setcar buffer-file-coding-system-explicit last-coding-system-used))))
 
 ;; This returns a value (MODES EXTENDED-ATTRIBUTES BACKUPNAME), like
 ;; backup-buffer.
index 995df2fb9a7654a97c019b9874d956b4666681dc..47c7087518e7989f181f7c419d075b04c42378f1 100644 (file)
@@ -1132,17 +1132,20 @@ FORM is a form to evaluate to define the coding-system."
       (put (intern name) 'coding-system-define-form form)
       (setq coding-system-alist (cons (list name) coding-system-alist)))))
 
-;; This variable is set in these three cases:
+;; This variable is set in these two cases:
 ;;   (1) A file is read by a coding system specified explicitly.
-;;       after-insert-file-set-coding sets the car of this value to
-;;       coding-system-for-read, and sets the cdr to nil.
-;;   (2) A buffer is saved.
-;;       After writing, basic-save-buffer-1 sets the car of this value
-;;       to last-coding-system-used.
-;;   (3) set-buffer-file-coding-system is called.
+;;       `after-insert-file-set-coding' sets the car of this value to
+;;       `coding-system-for-read', and sets the cdr to nil.
+;;   (2) `set-buffer-file-coding-system' is called.
 ;;       The cdr of this value is set to the specified coding system.
-;; This variable is used for decoding in revert-buffer and encoding in
-;; select-safe-coding-system.
+;; This variable is used for decoding in `revert-buffer' and encoding
+;; in `select-safe-coding-system'.
+;;
+;; When saving a buffer, if `buffer-file-coding-system-explicit' is
+;; already non-nil, `basic-save-buffer-1' sets its CAR to the value of
+;; `last-coding-system-used'.  (It used to set it unconditionally, but
+;; that seems unnecessary; see Bug#4533.)
+
 (defvar buffer-file-coding-system-explicit nil
   "The file coding system explicitly specified for the current buffer.
 The value is a cons of coding systems for reading (decoding) and