emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master 5d14080: * lisp/vc/diff-mode.el (diff-find-source-l


From: Juri Linkov
Subject: [Emacs-diffs] master 5d14080: * lisp/vc/diff-mode.el (diff-find-source-location): Use vc-working-revision
Date: Sat, 17 Nov 2018 16:52:11 -0500 (EST)

branch: master
commit 5d140800398287c20230dda79162a7c40016d88e
Author: Juri Linkov <address@hidden>
Commit: Juri Linkov <address@hidden>

    * lisp/vc/diff-mode.el (diff-find-source-location): Use vc-working-revision
    
    when diff shows changes in working revision.  (Bug#33319)
    (diff-goto-source): Rename variables to avoid ambiguity.
---
 lisp/vc/diff-mode.el | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/lisp/vc/diff-mode.el b/lisp/vc/diff-mode.el
index b86c17f..f2006809 100644
--- a/lisp/vc/diff-mode.el
+++ b/lisp/vc/diff-mode.el
@@ -1742,7 +1742,10 @@ NOPROMPT, if non-nil, means not to prompt the user."
           (file (or (diff-find-file-name other noprompt)
                      (error "Can't find the file")))
           (revision (and other diff-vc-backend
-                          (nth (if reverse 1 0) diff-vc-revisions)))
+                          (if reverse (nth 1 diff-vc-revisions)
+                            (or (nth 0 diff-vc-revisions)
+                                ;; When diff shows changes in working revision
+                                (vc-working-revision file)))))
           (buf (if revision
                     (let ((vc-find-revision-no-save t))
                       (vc-find-revision file revision diff-vc-backend))
@@ -1883,13 +1886,13 @@ revision of the file otherwise."
   ;; This is a convenient detail when using smerge-diff.
   (if event (posn-set-point (event-end event)))
   (let ((buffer (when event (current-buffer)))
-        (rev (not (save-excursion (beginning-of-line) (looking-at "[-<]")))))
+        (reverse (not (save-excursion (beginning-of-line) (looking-at 
"[-<]")))))
     (pcase-let ((`(,buf ,line-offset ,pos ,src ,_dst ,switched)
-                 (diff-find-source-location other-file rev)))
+                 (diff-find-source-location other-file reverse)))
       (pop-to-buffer buf)
       (goto-char (+ (car pos) (cdr src)))
       (when buffer (next-error-found buffer (current-buffer)))
-      (diff-hunk-status-msg line-offset (diff-xor rev switched) t))))
+      (diff-hunk-status-msg line-offset (diff-xor reverse switched) t))))
 
 
 (defun diff-current-defun ()



reply via email to

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