emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] emacs-26 066efb8: Fix log-view-diff-common when point is a


From: Tom Tromey
Subject: [Emacs-diffs] emacs-26 066efb8: Fix log-view-diff-common when point is after last entry
Date: Mon, 18 Sep 2017 22:02:25 -0400 (EDT)

branch: emacs-26
commit 066efb86660542238854a400c3c20b5cb526a3cd
Author: Tom Tromey <address@hidden>
Commit: Tom Tromey <address@hidden>

    Fix log-view-diff-common when point is after last entry
    
    Bug#28466
    * lisp/vc/log-view.el (log-view-diff-common): If point is after last
    entry, look at the previous revision.
---
 lisp/vc/log-view.el | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/lisp/vc/log-view.el b/lisp/vc/log-view.el
index 52f56ed..d6963d0 100644
--- a/lisp/vc/log-view.el
+++ b/lisp/vc/log-view.el
@@ -608,10 +608,16 @@ considered file(s)."
     (log-view-diff-common beg end t)))
 
 (defun log-view-diff-common (beg end &optional whole-changeset)
-  (let ((to (log-view-current-tag beg))
-        (fr (log-view-current-tag end)))
-    (when (string-equal fr to)
-      ;; TO and FR are the same, look at the previous revision.
+  (let* ((to (log-view-current-tag beg))
+         (fr-entry (log-view-current-entry end))
+         (fr (cadr fr-entry)))
+    ;; When TO and FR are the same, or when point is on a line after
+    ;; the last entry, look at the previous revision.
+    (when (or (string-equal fr to)
+              (>= (point)
+                  (save-excursion
+                    (goto-char (car fr-entry))
+                    (forward-line))))
       (setq fr (vc-call-backend log-view-vc-backend 'previous-revision nil 
fr)))
     (vc-diff-internal
      t (list log-view-vc-backend



reply via email to

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