emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/vc-hg.el,v


From: Dan Nicolaescu
Subject: [Emacs-diffs] Changes to emacs/lisp/vc-hg.el,v
Date: Sun, 15 Jun 2008 14:58:26 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Dan Nicolaescu <dann>   08/06/15 14:58:25

Index: lisp/vc-hg.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/vc-hg.el,v
retrieving revision 1.79
retrieving revision 1.80
diff -u -b -r1.79 -r1.80
--- lisp/vc-hg.el       4 Jun 2008 14:04:28 -0000       1.79
+++ lisp/vc-hg.el       15 Jun 2008 14:58:18 -0000      1.80
@@ -212,23 +212,19 @@
   ;; If the buffer exists from a previous invocation it might be
   ;; read-only.
   (let ((inhibit-read-only t))
-    ;; We need to loop and call "hg log" on each file separately.
-    ;; "hg log" with multiple file arguments mashes all the logs
-    ;; together.  Ironically enough, this puts us back near CVS
-    ;; which can't generate proper fileset logs either.
-    (dolist (file files)
       (with-current-buffer
          buffer
-       (insert "Working file: " file "\n"))    ;; Like RCS/CVS.
-      (vc-hg-command buffer 0 file "log"))))
+      (vc-hg-command buffer 0 files "log"))))
 
 (defvar log-view-message-re)
 (defvar log-view-file-re)
 (defvar log-view-font-lock-keywords)
+(defvar log-view-per-file-logs)
 
 (define-derived-mode vc-hg-log-view-mode log-view-mode "Hg-Log-View"
   (require 'add-log) ;; we need the add-log faces
-  (set (make-local-variable 'log-view-file-re) "^Working file:[ \t]+\\(.+\\)")
+  (set (make-local-variable 'log-view-file-re) "\\`a\\`")
+  (set (make-local-variable 'log-view-per-file-logs) nil)
   (set (make-local-variable 'log-view-message-re)
        "^changeset:[ \t]*\\([0-9]+\\):\\(.+\\)")
   (set (make-local-variable 'log-view-font-lock-keywords)
@@ -251,14 +247,16 @@
 
 (defun vc-hg-diff (files &optional oldvers newvers buffer)
   "Get a difference report using hg between two revisions of FILES."
-  (let ((working (vc-working-revision (car files))))
+  (let* ((firstfile (car files))
+        (working (and firstfile (vc-working-revision firstfile))))
     (when (and (equal oldvers working) (not newvers))
       (setq oldvers nil))
     (when (and (not oldvers) newvers)
       (setq oldvers working))
     (apply #'vc-hg-command (or buffer "*vc-diff*") nil
           (mapcar (lambda (file) (file-name-nondirectory file)) files)
-          "--cwd" (file-name-directory (car files))
+          "--cwd" (or (when firstfile (file-name-directory firstfile))
+                      (expand-file-name default-directory))
           "diff"
           (append
            (when oldvers




reply via email to

[Prev in Thread] Current Thread [Next in Thread]