GNU bug report logs - #59457
29.0.50; Incorrect vc-parent-buffer-name on vc-change-log revert

Previous Next

Package: emacs;

Reported by: Gabriel <gabriel376 <at> hotmail.com>

Date: Mon, 21 Nov 2022 20:39:02 UTC

Severity: normal

Found in version 29.0.50

Done: Sean Whitton <spwhitton <at> spwhitton.name>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Gabriel <gabriel376 <at> hotmail.com>
Subject: bug#59457: closed (Re: bug#44698: 27.1; dir-locals.el stay on
 file-local-variables-alist when using vc-mode)
Date: Mon, 10 Mar 2025 09:19:03 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#59457: 29.0.50; Incorrect vc-parent-buffer-name on vc-change-log revert

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 59457 <at> debbugs.gnu.org.

-- 
59457: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=59457
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Sean Whitton <spwhitton <at> spwhitton.name>
To: 44698 <at> debbugs.gnu.org, 59457-done <at> debbugs.gnu.org
Subject: Re: bug#44698: 27.1; dir-locals.el stay on
 file-local-variables-alist when using vc-mode
Date: Mon, 10 Mar 2025 17:18:11 +0800
Hello,

On Sat 08 Mar 2025 at 05:11pm +08, Sean Whitton wrote:

> Hello,
>
> On Sat 08 Mar 2025 at 08:07am GMT, Stefan Kangas wrote:
>
>> I think you can use `kill-all-local-variables` for this:
>>
>>     (kill-all-local-variables 'kill-permanent)
>
> Oh, thanks, I never knew it could take an argument.
> I think the thing to do here then is add that to vc-log-internal-common.
> We're a long way from releasing Emacs 31 so if this does break something
> else, we'll find out.
>
> Installed the change and closing the bug.

While preparing a fix for #59457 I discovered that invoking vc-print-log
already makes a call to kill-all-local-variables, in vc-setup-buffer.
So calling it in vc-log-internal-common too isn't right.

In other words, the place to fix this is in vc-setup-buffer, which
already has special handling for default-directory.

I've replaced the fix with one in vc-setup-buffer, and also fixed #59457.

-- 
Sean Whitton

[Message part 3 (message/rfc822, inline)]
From: Gabriel <gabriel376 <at> hotmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.0.50; Incorrect vc-parent-buffer-name on vc-change-log revert
Date: Mon, 21 Nov 2022 17:37:59 -0300
Description:

The *vc-change-log* buffer gets an incorrect value of
`vc-parent-buffer-name' on `revert-buffer'.

Steps:

1) emacs -Q (master "f176a36f4629b56c9fd9e3fc15aebd04a168c4f5")

2) Open some VC controlled file, e.g.: C-x C-f ~/git/emacs/README RET

3) Annotate the buffer: C-x v g

4) Show log revision at line: l

Result: *vc-change-log* buffer is displayed; the value of
`vc-parent-buffer-name', displayed on the right side of mode-line (see
`mode-line-format' and `mode-line-modes'), is correct (e.g.: " from
*Annotate README (rev f176a36f4629b56c9fd9e3fc15aebd04a168c4f5)*").

5) Revert the buffer: g

Result: the buffer is refreshed, but the value of
`vc-parent-buffer-name' is incorrectly set as " from *vc-change-log*".

---
Gabriel



This bug report was last modified 165 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.