[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs-25 02cd9cb: Check if the file exists on disk before
From: |
Dmitry Gutov |
Subject: |
[Emacs-diffs] emacs-25 02cd9cb: Check if the file exists on disk before producing the revert diff |
Date: |
Thu, 26 Nov 2015 15:15:49 +0000 |
branch: emacs-25
commit 02cd9cb8afd9510e3bdb20ce7148d1b9a6aa9d12
Author: Dmitry Gutov <address@hidden>
Commit: Dmitry Gutov <address@hidden>
Check if the file exists on disk before producing the revert diff
* lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
exists on disk (bug#20558).
---
lisp/vc/vc-dispatcher.el | 20 ++++++++++++++------
1 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/lisp/vc/vc-dispatcher.el b/lisp/vc/vc-dispatcher.el
index ec55867..b8593e3 100644
--- a/lisp/vc/vc-dispatcher.el
+++ b/lisp/vc/vc-dispatcher.el
@@ -580,12 +580,20 @@ editing!"
(defun vc-buffer-sync (&optional not-urgent)
"Make sure the current buffer and its working file are in sync.
NOT-URGENT means it is ok to continue if the user says not to save."
- (when (buffer-modified-p)
- (if (or vc-suppress-confirm
- (y-or-n-p (format "Buffer %s modified; save it? " (buffer-name))))
- (save-buffer)
- (unless not-urgent
- (error "Aborted")))))
+ (let (missing)
+ (when (cond
+ ((buffer-modified-p))
+ ((not (file-exists-p buffer-file-name))
+ (setq missing t)))
+ (if (or vc-suppress-confirm
+ (y-or-n-p (format "Buffer %s %s; save it? "
+ (buffer-name)
+ (if missing
+ "is missing on disk"
+ "modified"))))
+ (save-buffer)
+ (unless not-urgent
+ (error "Aborted"))))))
;; Command closures
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] emacs-25 02cd9cb: Check if the file exists on disk before producing the revert diff,
Dmitry Gutov <=