GNU bug report logs - #70938
30.0.50; Edebug appropriates overriding-terminal-local-map

Previous Next

Package: emacs;

Reported by: Stephen Berman <stephen.berman <at> gmx.net>

Date: Tue, 14 May 2024 13:25:02 UTC

Severity: normal

Tags: patch, pending

Found in version 30.0.50

Full log


Message #17 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Stephen Berman via "Bug reports for GNU Emacs, the Swiss army knife of
 text editors" <bug-gnu-emacs <at> gnu.org>
Cc: Stephen Berman <stephen.berman <at> gmx.net>, 70938 <at> debbugs.gnu.org
Subject: Re: bug#70938: 30.0.50; Edebug appropriates
 overriding-terminal-local-map
Date: Tue, 14 May 2024 23:23:03 +0200
Stephen Berman via "Bug reports for GNU Emacs, the Swiss army knife of
text editors" <bug-gnu-emacs <at> gnu.org> writes:

> This is evidently from the instrumented function.  What I haven't been
> able to determine is why this remains even after the instrumentation has
> been removed; it seems that Edebug has appropriated
> overriding-terminal-local-map.  The only way I have found to release it
> is `M-x unload-library RET edebug'.

Thanks.  I can reproduce the issue.  And this is a very valuable recipe,
because this may be the problem we are hunting for quite a while.

I agree with your analysis - the transient map the edebugged code adds
is never removed, its bound commands are instrumented code.  Just M-:
overriding-terminal-local-map RET to verify.

AFAIU, this is caused only by this one binding:

  (overriding-terminal-local-map nil)

in `edebug--recursive-edit'.  This seems to make the cleanup code of the
added transient map in `pre-command-hook' think that the transient map
is gone, we are done and removes itself from the hook.  Then the added
transient map stays forever, unless you clear
`overriding-terminal-local-map' manually.

But what can we do - does anyone have a good idea?  Could the cleanup
code that removes the transient map maybe check whether the variable
`overriding-terminal-local-map' it sees is really the global one?


Thanks,

Michael.




This bug report was last modified 112 days ago.

Previous Next


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