+2009-03-03 Kenichi Handa <handa@m17n.org>
+
+ * files.el (basic-save-buffer-1): Set car part of
+ buffer-file-coding-system-explicit.
+ (revert-buffer): Check car part of
+ buffer-file-coding-system-explicit.
+
+ * international/mule-cmds.el (select-safe-coding-system): If cdr
+ part of buffer-file-coding-system-explicit is set, ignore
+ default-buffer-file-coding-system and the most preferred coding
+ system.
+
+ * international/mule.el (set-buffer-file-coding-system): Set cdr
+ part of buffer-file-coding-system-explicit.
+ (after-insert-file-set-coding): Set
+ buffer-file-coding-system-explicit to a cons.
+
2009-03-02 Glenn Morris <rgm@gnu.org>
* calendar/calendar.el (diary-date-forms, calendar-date-display-form):
(let ((coding-system-for-write save-buffer-coding-system))
(basic-save-buffer-2))
(basic-save-buffer-2))
- (setq buffer-file-coding-system-explicit last-coding-system-used)))
+ (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)))))
;; This returns a value (MODES . BACKUPNAME), like backup-buffer.
(defun basic-save-buffer-2 ()
;; internal coding.
(if auto-save-p 'auto-save-coding
(or coding-system-for-read
- buffer-file-coding-system-explicit))))
+ (and
+ buffer-file-coding-system-explicit
+ (car buffer-file-coding-system-explicit))))))
(if (and (not enable-multibyte-characters)
coding-system-for-read
(not (memq (coding-system-base