From 264175a802f7a4e4917d2a81dd7a98789c5dffb6 Mon Sep 17 00:00:00 2001 From: Dan Nicolaescu Date: Thu, 9 Oct 2008 04:52:28 +0000 Subject: [PATCH] (vc-cvs-dir-stay-local): New variable. (vc-cvs-dir-status): Use it. --- lisp/ChangeLog | 5 +++++ lisp/vc-cvs.el | 10 +++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index b9cc231498c..102713618ec 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2008-10-09 Dan Nicolaescu + + * vc-cvs.el (vc-cvs-dir-stay-local): New variable. + (vc-cvs-dir-status): Use it. + 2008-10-08 Chong Yidong * json.el (json-skip-whitespace): Fix last change. diff --git a/lisp/vc-cvs.el b/lisp/vc-cvs.el index 4913a23440d..bd6e755d128 100644 --- a/lisp/vc-cvs.el +++ b/lisp/vc-cvs.el @@ -125,6 +125,14 @@ by these regular expressions." :version "21.1" :group 'vc) +(defcustom vc-cvs-dir-stay-local nil + "*Non-nil means use local operations when possible for remote repositories. +This avoids slow queries over the network and instead uses heuristics +and past information to determine the current status of files for `vc-dir'." + :type 'boolean + :version "23.1" + :group 'vc) + (defcustom vc-cvs-sticky-date-format-string "%c" "*Format string for mode-line display of sticky date. Format is according to `format-time-string'. Only used if @@ -953,7 +961,7 @@ state." (defun vc-cvs-dir-status (dir update-function) "Create a list of conses (file . state) for DIR." ;; FIXME check all files in DIR instead? - (if (vc-stay-local-p dir) + (if vc-cvs-dir-stay-local (vc-cvs-dir-status-heuristic dir update-function) (vc-cvs-command (current-buffer) 'async dir "-f" "status") ;; Alternative implementation: use the "update" command instead of -- 2.39.5