Subject: Re: bug#16479: 24.3.50; daemon freeze with tty menus

From: Stefan Monnier <[email-masked]>
Date: Sat, 25 Jan 2014 17:39:16 -0500

>   emacsclient -t
> This pops down the menu, but the value of
> overriding-terminal-local-map in the original frame is not restored,
> so, for example, any cursor motion command signals an error because it
> tries to invoke tty-menu commands.
> What am I not doing correctly here?  TIA.

Maybe there's a bug in our handling of let-binding w.r.t terminal-local
variables (i.e. the unbind of overriding-terminal-local-map ands up
resetting that variable in the new terminal rather than in the terminal
where the specbind was done).

I can't remember seeing code to handle that when I last touched the
let-binding code, so it sounds very likely: we try and handle
buffer-local and frame-local correctly (by remembering where the
binding was installed a de-install it at the right place) but we don't
do that same thing for terminal-local bindings.

        Stefan