Subject: bug#14995: [PATCH] vc-do-command ignores symbolic links

From: Xue Fuqiao <[email-masked]>
Date: Wed, 31 Jul 2013 18:53:42 +0800

tags patch

This small patch fixes a bug in vc-do-command:

=== modified file 'lisp/vc/vc-dispatcher.el'
--- lisp/vc/vc-dispatcher.el    2013-06-15 02:50:47 +0000
+++ lisp/vc/vc-dispatcher.el    2013-07-31 10:49:27 +0000
@@ -275,11 +275,8 @@
 that is inserted into the command line before the filename.
 Return the return value of the slave command in the synchronous
 case, and the process object in the asynchronous case."
-  ;; FIXME: file-relative-name can return a bogus result because
-  ;; it doesn't look at the actual file-system to see if symlinks
-  ;; come into play.
   (let* ((files
-      (mapcar (lambda (f) (file-relative-name (expand-file-name f)))
+      (mapcar (lambda (f) (file-relative-name (file-truename
(expand-file-name f))))
           (if (listp file-or-list) file-or-list (list file-or-list))))
      (full-command
       ;; What we're doing here is preparing a version of the command

-- 
Best regards, Xue Fuqiao.
http://www.gnu.org/software/emacs/