2005-01-02 Stefan <monnier@iro.umontreal.ca>
+ * vc-svn.el (vc-svn-diff): Stay local if possible.
+ From Karl Chen <quarl@cs.berkeley.edu>.
+
* vc-arch.el (vc-arch-workfile-version): Handle the empty-branch case.
* files.el (hack-local-variables): Fix last change.
;;; vc-svn.el --- non-resident support for Subversion version-control
-;; Copyright (C) 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+;; Copyright (C) 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
;; Free Software Foundation, Inc.
;; Author: FSF (see vc.el for full credits)
(defun vc-svn-diff (file &optional oldvers newvers buffer)
"Get a difference report using SVN between two versions of FILE."
(unless buffer (setq buffer "*vc-diff*"))
+ (if (and oldvers (equal oldvers (vc-workfile-version file)))
+ ;; Use nil rather than the current revision because svn handles it
+ ;; better (i.e. locally).
+ (setq oldvers nil))
(if (string= (vc-workfile-version file) "0")
;; This file is added but not yet committed; there is no master file.
(if (or oldvers newvers)