GNU bug report logs -
#70938
30.0.50; Edebug appropriates overriding-terminal-local-map
Previous Next
Full log
View this message in rfc822 format
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.