comparison lisp/international/mule-cmds.el @ 87430:f322e8d4c5e3

(select-safe-coding-system): When a buffer is modfied, cancel the writing.
author Kenichi Handa <handa@m17n.org>
date Thu, 27 Dec 2007 10:27:21 +0000
parents ec0ef12211d9
children cdd30283527d
comparison
equal deleted inserted replaced
87429:09cae7fe2129 87430:f322e8d4c5e3
964 (setcar elt (coding-system-change-eol-conversion 964 (setcar elt (coding-system-change-eol-conversion
965 (car elt) default-eol-type)))))) 965 (car elt) default-eol-type))))))
966 966
967 (let ((codings (find-coding-systems-region from to)) 967 (let ((codings (find-coding-systems-region from to))
968 (coding-system nil) 968 (coding-system nil)
969 (tick (if (not (stringp from)) (buffer-modified-tick)))
969 safe rejected unsafe) 970 safe rejected unsafe)
970 (if (eq (car codings) 'undecided) 971 (if (eq (car codings) 'undecided)
971 ;; Any coding system is ok. 972 ;; Any coding system is ok.
972 (setq coding-system (caar default-coding-system)) 973 (setq coding-system (caar default-coding-system))
973 ;; Reverse the list so that elements are accumulated in safe, 974 ;; Reverse the list so that elements are accumulated in safe,
1028 (unless (yes-or-no-p 1029 (unless (yes-or-no-p
1029 (format "Selected encoding %s disagrees with \ 1030 (format "Selected encoding %s disagrees with \
1030 %s specified by file contents. Really save (else edit coding cookies \ 1031 %s specified by file contents. Really save (else edit coding cookies \
1031 and try again)? " coding-system auto-cs)) 1032 and try again)? " coding-system auto-cs))
1032 (error "Save aborted")))) 1033 (error "Save aborted"))))
1034 (when (and tick (/= tick (buffer-modified-tick)))
1035 (error "Cancelled because the buffer was modified"))
1033 coding-system))) 1036 coding-system)))
1034 1037
1035 (setq select-safe-coding-system-function 'select-safe-coding-system) 1038 (setq select-safe-coding-system-function 'select-safe-coding-system)
1036 1039
1037 (defun select-message-coding-system () 1040 (defun select-message-coding-system ()