Mercurial > emacs
diff lisp/vc-rcs.el @ 94835:0f7a18ff94d6
* vc-sccs.el (vc-sccs-dir-status):
* vc-rcs.el (vc-rcs-dir-status): Avoid using results from multiple
backends and returning up to date files.
author | Dan Nicolaescu <dann@ics.uci.edu> |
---|---|
date | Sat, 10 May 2008 03:58:11 +0000 |
parents | 76b523d99056 |
children | 5e64dca662f0 |
line wrap: on
line diff
--- a/lisp/vc-rcs.el Sat May 10 03:55:00 2008 +0000 +++ b/lisp/vc-rcs.el Sat May 10 03:58:11 2008 +0000 @@ -188,14 +188,21 @@ (vc-rcs-state file))))) (defun vc-rcs-dir-status (dir update-function) - ;; Doing individual vc-state calls is painful but tgere - ;; is no better way in RCS-land. + ;; FIXME: this function should be rewritten or `vc-expand-dirs' + ;; should be changed to take a backend parameter. Using + ;; `vc-expand-dirs' is not TRTD because it returns files from + ;; multiple backends. It should also return 'unregistered files. + + ;; Doing individual vc-state calls is painful but there + ;; is no better way in RCS-land. (let ((flist (vc-expand-dirs (list dir))) (result nil)) (dolist (file flist) (let ((state (vc-state file)) (frel (file-relative-name file))) - (push (list frel state) result))) + (when (and (eq (vc-backend file) 'RCS) + (not (eq state 'up-to-date))) + (push (list frel state) result)))) (funcall update-function result))) (defun vc-rcs-working-revision (file)