aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog4
-rw-r--r--lisp/vc.el15
2 files changed, 12 insertions, 7 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 9bf42b35f2..14773bad08 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,7 @@
+2008-05-23 Stefan Monnier <[email protected]>
+
+ * vc.el (vc-delete-file): Don't try to resynch the buffer.
+
2008-05-23 Paul R <[email protected]>
* textmodes/reftex-vars.el (reftex-extra-bindings-prefix): New var.
diff --git a/lisp/vc.el b/lisp/vc.el
index 7cf24bcd95..345a7bf53c 100644
--- a/lisp/vc.el
+++ b/lisp/vc.el
@@ -547,6 +547,8 @@
;;; Todo:
+;; - Add key-binding for vc-delete-file.
+
;;;; New Primitives:
;;
;; - deal with push/pull operations.
@@ -587,7 +589,7 @@
;;;; Internal cleanups:
;;
;; - backends that care about vc-stay-local should try to take it into
-;; account for vc-dir. Is this likely to be useful???
+;; account for vc-dir. Is this likely to be useful??? YES!
;;
;; - vc-expand-dirs should take a backend parameter and only look for
;; files managed by that backend.
@@ -2437,17 +2439,16 @@ backend to NEW-BACKEND, and unregister FILE from the current backend.
(not (file-exists-p file)))
(with-current-buffer (or buf (find-file-noselect file))
(let ((backup-inhibited nil))
- (backup-buffer))
- ;; If we didn't have a buffer visiting the file before this
- ;; command, kill the buffer created by the above
- ;; `find-file-noselect' call.
- (unless buf (kill-buffer (current-buffer)))))
+ (backup-buffer))))
(vc-call-backend backend 'delete-file file)
;; If the backend hasn't deleted the file itself, let's do it for him.
(when (file-exists-p file) (delete-file file))
;; Forget what VC knew about the file.
(vc-file-clearprops file)
- (vc-resynch-buffer file buf t)))
+ ;; Since we've deleted the file and we've made sure the buffer had no
+ ;; unsaved changes, we can kill the buffer. Much easier than trying to
+ ;; properly refresh its VC state.
+ (when buf (kill-buffer buf))))
;;;###autoload
(defun vc-rename-file (old new)