Mercurial > emacs
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 () |