From ba83b7b62f12b0305585261f7b08bf1a699aa86b Mon Sep 17 00:00:00 2001 From: Dan Nicolaescu Date: Fri, 24 Jul 2009 05:41:17 +0000 Subject: [PATCH] * vc-dispatcher.el (vc-resynch-buffers-in-directory): Make sure the buffer we try to sync is current when calling vc-resynch-buffer. * vc-dir.el (vc-dir-resynch-file): Make sure vc-dir-update does not show up to date files. --- lisp/ChangeLog | 9 +++++++++ lisp/vc-dir.el | 7 ++++--- lisp/vc-dispatcher.el | 3 ++- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 6e1b5ef2819..b6e647f9097 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,12 @@ +2009-07-24 Dan Nicolaescu + + * vc-dispatcher.el (vc-resynch-buffers-in-directory): Make sure + the buffer we try to sync is current when calling + vc-resynch-buffer. + + * vc-dir.el (vc-dir-resynch-file): Make sure vc-dir-update does + not show up to date files. + 2009-07-24 Glenn Morris * emacs-lisp/elint.el (elint-current-buffer, elint-defun): diff --git a/lisp/vc-dir.el b/lisp/vc-dir.el index 4316caeade1..2c1138f858f 100644 --- a/lisp/vc-dir.el +++ b/lisp/vc-dir.el @@ -866,9 +866,10 @@ If it is a file, return the corresponding cons for the file itself." (when (vc-string-prefix-p ddir file) (if (file-directory-p file) (vc-dir-resync-directory-files file) - (vc-dir-update - (list (vc-dir-recompute-file-state file ddir)) - status-buf))))))) + (let ((state (vc-dir-recompute-file-state file ddir))) + (vc-dir-update + (list state) + status-buf (eq (cadr state) 'up-to-date))))))))) ;; We didn't find any vc-dir buffers, remove the hook, it is ;; not needed. (unless found-vc-dir-buf diff --git a/lisp/vc-dispatcher.el b/lisp/vc-dispatcher.el index c51a4896b76..f03f16ede98 100644 --- a/lisp/vc-dispatcher.el +++ b/lisp/vc-dispatcher.el @@ -484,7 +484,8 @@ editing!" (dolist (buffer (buffer-list)) (let ((fname (buffer-file-name buffer))) (when (and fname (vc-string-prefix-p directory fname)) - (vc-resynch-buffer fname keep noquery))))) + (with-current-buffer buffer + (vc-resynch-buffer fname keep noquery)))))) (defun vc-resynch-buffer (file &optional keep noquery) "If FILE is currently visited, resynch its buffer." -- 2.39.2