GNU bug report logs -
#68174
30.0.50; Project and VC disagree about what repository we're in
Previous Next
Reported by: Sean Whitton <spwhitton <at> spwhitton.name>
Date: Sun, 31 Dec 2023 13:27:02 UTC
Severity: normal
Found in version 30.0.50
Fixed in version 30.1
Done: Dmitry Gutov <dmitry <at> gutov.dev>
Bug is archived. No further changes may be made.
Full log
Message #22 received at 68174-done <at> debbugs.gnu.org (full text, mbox):
Version: 30.1
On 02/01/2024 15:28, Eli Zaretskii wrote:
>> Date: Tue, 2 Jan 2024 15:10:53 +0200
>> Cc: 68174 <at> debbugs.gnu.org, juri <at> linkov.net
>> From: Dmitry Gutov <dmitry <at> gutov.dev>
>>
>> On 02/01/2024 10:55, Sean Whitton wrote:
>>>> This particular case though seems fixed with this patch, please test:
>>>>
>>>> diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el
>>>> index 3cd835a9d6b..82051740b8f 100644
>>>> --- a/lisp/vc/vc.el
>>>> +++ b/lisp/vc/vc.el
>>>> @@ -1074,6 +1074,7 @@ vc-expand-dirs
>>>>
>>>> (defvar vc-dir-backend)
>>>> (defvar log-view-vc-backend)
>>>> +(defvar log-view-vc-fileset)
>>>> (defvar log-edit-vc-backend)
>>>> (defvar diff-vc-backend)
>>>> (defvar diff-vc-revisions)
>>>> @@ -1155,6 +1156,8 @@ vc-deduce-fileset
>>>> (vc-state buffer-file-name)
>>>> (vc-checkout-model backend buffer-file-name))
>>>> (list backend (list buffer-file-name))))
>>>> + ((derived-mode-p 'log-view-mode)
>>>> + (list log-view-vc-backend log-view-vc-fileset))
>>>> ((and (buffer-live-p vc-parent-buffer)
>>>> ;; FIXME: Why this test? --Stef
>>>> (or (buffer-file-name vc-parent-buffer)
>>> Yup, that works, thanks!
>>
>> Very good.
>>
>> Eli, do you think we could add this to emacs-29 as well?
>>
>> It would help the users of 29.2 avoid the described bug when/if they
>> upgrade to the latest project.el. Probably not very urgent, but OTOH the
>> change looks pretty safe.
>
> If it's safe, you'd need to convince me. Because just by looking at
> it, I don't have a clear idea what else it could affect.
It's not a trivial transformation, but it's semantically sound:
log-view-mode saves -- or one might say caches -- the backend and the
fileset in its own variables locally (referenced in the diff above). The
commands in log-view.el (of which there are several) use those vars
rather than look up vc-parent-buffer, so the values should be correct.
> And the use
> case is pretty rare, AFAICT. So I tend to be happier with this on
> master.
Ok, I'll push it to master for now.
This bug report was last modified 1 year and 136 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.