bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#68364: Print log buttons fail with vc-log-mergebase


From: Dmitry Gutov
Subject: bug#68364: Print log buttons fail with vc-log-mergebase
Date: Thu, 11 Jan 2024 01:23:08 +0200
User-agent: Mozilla Thunderbird

On 10/01/2024 19:20, Juri Linkov wrote:
Buttons to show more log entries is a nice feature,
but after the recent change this doesn't work with
'C-x v M L' (vc-log-mergebase):
    Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p
"branch-2")
      vc-print-log-setup-buttons("branch-1" t "branch-2" nil)
Probably it requires a special handling for 'C-x v M L'.

Does this help?

Looks like the description of the LIMIT argument wasn't updated in the
vc-print-log-internal's docstring, when it started to be a string
sometimes.

The description of the LIMIT argument in vc-print-log-internal looks strange:

   "Show up to LIMIT entries (non-nil means unlimited)."

Maybe it should be "(nil means unlimited)"?

Probably. And a mention of allowed string values.

diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el
index b8cc44fc3dc..7d5a5486250 100644
--- a/lisp/vc/vc.el
+++ b/lisp/vc/vc.el
@@ -2711,7 +2711,7 @@ vc-print-log-setup-buttons
    ;; In either case only one revision is wanted, no buttons.
    (when (and limit (not (eq 'limit-unsupported pl-return))
               (not (and is-start-revision
-                       (= limit 1))))
+                       (eql limit 1))))
      (let ((entries 0))
        (goto-char (point-min))
        (while (re-search-forward log-view-message-re nil t)

Sorry, still fails on another line:

       (if (< entries limit)

But this works:

diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el
index b8cc44fc3dc..d284b19fcf0 100644
--- a/lisp/vc/vc.el
+++ b/lisp/vc/vc.el
@@ -2709,7 +2709,8 @@ vc-print-log-setup-buttons
    ;; LIMIT=1 is set by vc-annotate-show-log-revision-at-line
    ;; or by vc-print-root-log with current-prefix-arg=1.
    ;; In either case only one revision is wanted, no buttons.
-  (when (and limit (not (eq 'limit-unsupported pl-return))
+  (when (and limit (not (stringp limit))
+             (not (eq 'limit-unsupported pl-return))
               (not (and is-start-revision
                         (= limit 1))))
      (let ((entries 0))

That would mean the "follow renames" button is never shown in vc-log-mergebase outputs.

I've pushed commit 1ecb53ad2fc, check it out.





reply via email to

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