2606 |
(set-buffer (buffer-base-buffer))) |
(set-buffer (buffer-base-buffer))) |
2607 |
(if (buffer-modified-p) |
(if (buffer-modified-p) |
2608 |
(let ((recent-save (recent-auto-save-p)) |
(let ((recent-save (recent-auto-save-p)) |
|
msg |
|
2609 |
setmodes tempsetmodes) |
setmodes tempsetmodes) |
2610 |
;; On VMS, rename file and buffer to get rid of version number. |
;; On VMS, rename file and buffer to get rid of version number. |
2611 |
(if (and (eq system-type 'vax-vms) |
(if (and (eq system-type 'vax-vms) |
2652 |
(save-excursion |
(save-excursion |
2653 |
(goto-char (point-max)) |
(goto-char (point-max)) |
2654 |
(insert ?\n)))) |
(insert ?\n)))) |
|
(setq msg (current-message)) |
|
2655 |
;; Support VC version backups. |
;; Support VC version backups. |
2656 |
(vc-before-save) |
(vc-before-save) |
2657 |
(or (run-hook-with-args-until-success 'write-contents-hooks) |
(or (run-hook-with-args-until-success 'write-contents-hooks) |
2658 |
(run-hook-with-args-until-success 'local-write-file-hooks) |
(run-hook-with-args-until-success 'local-write-file-hooks) |
2659 |
(run-hook-with-args-until-success 'write-file-hooks) |
(run-hook-with-args-until-success 'write-file-hooks) |
2660 |
(progn |
;; If a hook returned t, file is already "written". |
2661 |
(unless (equal msg (current-message)) |
;; Otherwise, write it the usual way now. |
2662 |
(sit-for 2)) |
(setq setmodes (basic-save-buffer-1))) |
|
;; If a hook returned t, file is already "written". |
|
|
;; Otherwise, write it the usual way now. |
|
|
(setq setmodes (basic-save-buffer-1)))) |
|
2663 |
;; Now we have saved the current buffer. Let's make sure |
;; Now we have saved the current buffer. Let's make sure |
2664 |
;; that buffer-file-coding-system is fixed to what |
;; that buffer-file-coding-system is fixed to what |
2665 |
;; actually used for saving by binding it locally. |
;; actually used for saving by binding it locally. |