summaryrefslogtreecommitdiff
path: root/lisp/vc-svn.el
diff options
context:
space:
mode:
authorDan Nicolaescu <dann@ics.uci.edu>2009-06-23 06:35:40 +0000
committerDan Nicolaescu <dann@ics.uci.edu>2009-06-23 06:35:40 +0000
commit77bf3f54522f792ec1573ab2595652252ea8cecd (patch)
treee840317e5ccee1aca58c39c7024a8be7a8279399 /lisp/vc-svn.el
parent2764748c42990b0b80d7c641e821ed03d6dabfc7 (diff)
downloademacs-77bf3f54522f792ec1573ab2595652252ea8cecd.tar.gz
* vc-hooks.el (vc-stay-local-p, vc-state, vc-working-revision):
Add an optional argument for the backend, use it instead of calling vc-backend. (vc-mode-line): Add an optional argument for the backend. Pass the backend to vc-state and vc-working-revision. Move code for special handling for vc-state being a buffer to ... * vc-rcs.el (vc-rcs-find-file-hook): * vc-sccs.el (vc-sccs-find-file-hook): ... here. New functions. * vc-svn.el (vc-svn-state, vc-svn-dir-status, vc-svn-checkout) (vc-svn-print-log, vc-svn-diff): Pass 'SVN to vc-state, vc-stay-local-p and vc-mode-line calls. * vc-cvs.el (vc-cvs-state, vc-cvs-checkout, vc-cvs-print-log) (vc-cvs-diff, vc-cvs-annotate-command) (vc-cvs-make-version-backups-p, vc-cvs-stay-local-p) (vc-cvs-dir-status): Pass 'CVS to vc-state, vc-stay-local-p and vc-mode-line calls. * vc.el (vc-deduce-fileset): Use vc-deduce-fileset instead of direct comparison. (vc-next-action, vc-transfer-file, vc-rename-file): Also pass the backend when calling vc-mode-line. (vc-register): Do not create a closure for calling the vc register function, call it directly.
Diffstat (limited to 'lisp/vc-svn.el')
-rw-r--r--lisp/vc-svn.el15
1 files changed, 8 insertions, 7 deletions
diff --git a/lisp/vc-svn.el b/lisp/vc-svn.el
index 2d5c239e3b2..830e1582978 100644
--- a/lisp/vc-svn.el
+++ b/lisp/vc-svn.el
@@ -142,7 +142,7 @@ want to force an empty list of arguments, use t."
(defun vc-svn-state (file &optional localp)
"SVN-specific version of `vc-state'."
- (setq localp (or localp (vc-stay-local-p file)))
+ (setq localp (or localp (vc-stay-local-p file 'SVN)))
(with-temp-buffer
(cd (file-name-directory file))
(vc-svn-command t 0 file "status" (if localp "-v" "-u"))
@@ -189,7 +189,7 @@ RESULT is a list of conses (FILE . STATE) for directory DIR."
;; calling synchronously (vc-svn-registered DIR) => calling svn status -v DIR
;; which is VERY SLOW for big trees and it makes emacs
;; completely unresponsive during that time.
- (let* ((local (and nil (vc-stay-local-p dir)))
+ (let* ((local (and nil (vc-stay-local-p dir 'SVN)))
(remote (or t (not local) (eq local 'only-file))))
(vc-svn-command (current-buffer) 'async nil "status"
(if remote "-u"))
@@ -316,7 +316,7 @@ This is only possible if SVN is responsible for FILE's directory.")
(message "Checking out %s..." file)
(with-current-buffer (or (get-file-buffer file) (current-buffer))
(vc-svn-update file editable rev (vc-switches 'SVN 'checkout)))
- (vc-mode-line file)
+ (vc-mode-line file 'SVN)
(message "Checking out %s...done" file))
(defun vc-svn-update (file editable rev switches)
@@ -470,7 +470,7 @@ or svn+ssh://."
(vc-svn-command
buffer
'async
- ;; (if (and (= (length files) 1) (vc-stay-local-p file)) 'async 0)
+ ;; (if (and (= (length files) 1) (vc-stay-local-p file 'SVN)) 'async 0)
(list file)
"log"
;; By default Subversion only shows the log up to the
@@ -502,7 +502,7 @@ or svn+ssh://."
(list "--diff-cmd=diff" "-x"
(mapconcat 'identity (vc-switches nil 'diff) " "))))
(async (and (not vc-disable-async-diff)
- (vc-stay-local-p files)
+ (vc-stay-local-p files 'SVN)
(or oldvers newvers)))) ; Svn diffs those locally.
(apply 'vc-svn-command buffer
(if async 'async 0)
@@ -543,8 +543,9 @@ NAME is assumed to be a URL."
;;;
;; Subversion makes backups for us, so don't bother.
-;; (defalias 'vc-svn-make-version-backups-p 'vc-stay-local-p
-;; "Return non-nil if version backups should be made for FILE.")
+;; (defun vc-svn-make-version-backups-p (file)
+;; "Return non-nil if version backups should be made for FILE."
+;; (vc-stay-local-p file 'SVN))
(defun vc-svn-check-headers ()
"Check if the current file has any headers in it."