aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman <[email protected]>1997-03-21 20:06:04 +0000
committerRichard M. Stallman <[email protected]>1997-03-21 20:06:04 +0000
commit4cbeb71c2a97e6b4481d2d9a72e261118b97e83e (patch)
tree214ad09e891e2aee891b932a906a87dde1e9e95d
parent122955bfb427ccccf33d9b4db9ef1ea9ee5ee4c8 (diff)
(vc-next-action-on-file): With implicit checkout, make
sure not to lose unsaved changes.
-rw-r--r--lisp/vc.el8
1 files changed, 6 insertions, 2 deletions
diff --git a/lisp/vc.el b/lisp/vc.el
index 70abb77b54..e4ffc8dcf9 100644
--- a/lisp/vc.el
+++ b/lisp/vc.el
@@ -620,8 +620,12 @@ to an optional list of FLAGS."
(vc-resynch-buffer file t (not (buffer-modified-p buffer)))))
(error "%s needs update" (buffer-name))))
- ;; if there is no lock on the file, assert one and get it
- ((not (setq owner (vc-locking-user file)))
+ ;; If there is no lock on the file, assert one and get it.
+ ;; (With implicit checkout, make sure not to lose unsaved changes.)
+ ((progn (and (eq (vc-checkout-model file) 'implicit)
+ (buffer-modified-p buffer)
+ (vc-buffer-sync))
+ (not (setq owner (vc-locking-user file))))
(if (and vc-checkout-carefully
(not (vc-workfile-unchanged-p file t)))
(if (save-window-excursion