]> git.eshelyaron.com Git - emacs.git/commitdiff
(vc-default-workfile-unchanged-p): If the implementation supports it,
authorAndré Spiegel <spiegel@gnu.org>
Sun, 21 Mar 2004 15:44:39 +0000 (15:44 +0000)
committerAndré Spiegel <spiegel@gnu.org>
Sun, 21 Mar 2004 15:44:39 +0000 (15:44 +0000)
let diff output go to *vc*, not *vc-diff*, since this is an internal
call.

lisp/vc-hooks.el

index 1354d442e268154e2ea71b16d2799fc94d37435c..d0c444d2d91c3beaff3051b3063e79b91bb98ff4 100644 (file)
@@ -6,7 +6,7 @@
 ;; Author:     FSF (see vc.el for full credits)
 ;; Maintainer: Andre Spiegel <spiegel@gnu.org>
 
-;; $Id: vc-hooks.el,v 1.160 2003/09/01 15:45:17 miles Exp $
+;; $Id: vc-hooks.el,v 1.161 2004/03/15 03:53:05 monnier Exp $
 
 ;; This file is part of GNU Emacs.
 
@@ -463,8 +463,15 @@ and does not employ any heuristic at all."
 (defun vc-default-workfile-unchanged-p (backend file)
   "Check if FILE is unchanged by diffing against the master version.
 Return non-nil if FILE is unchanged."
-  ;; If rev1 is nil, `diff' uses the current workfile version.
-  (zerop (vc-call diff file)))
+  (let ((diff-args-length
+         (length (cadr (symbol-function
+                        (vc-find-backend-function backend 'diff))))))
+    (zerop (if (> diff-args-length 4) 
+               ;; If the implementation supports it, let the output
+               ;; go to *vc*, not *vc-diff*, since this is an internal call.
+               (vc-call diff file nil nil "*vc*")
+             ;; for backward compatibility
+             (vc-call diff file)))))
 
 (defun vc-workfile-version (file)
   "Return the version level of the current workfile FILE.