bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#21833: 24.4; desktop-kill, which is interactive, is in kill-emacs-ho


From: Eli Zaretskii
Subject: bug#21833: 24.4; desktop-kill, which is interactive, is in kill-emacs-hook
Date: Thu, 12 Nov 2015 22:50:01 +0200

> From: Stelian Iancu <si@siancu.net>
> Date: Thu, 12 Nov 2015 21:24:36 +0100
> Cc: 21833@debbugs.gnu.org
> 
> On 12/11/15 21:11, Glenn Morris wrote:
> >
> > The point is that kill-emacs-hook is not supposed to contain interactive
> > things.
> >
> 
> Thanks for the clarification.
> 
> I've had a look at the code and desktop-kill is added to the 
> kill-emacs-hook in desktop.el:
> 
> (unless noninteractive
> (add-hook 'kill-emacs-hook 'desktop-kill))
> 
> So I guess the fix would be to remove these two lines, right?

Not exactly.  From the ELisp manual:

   -- Variable: kill-emacs-hook
       This normal hook is run by `kill-emacs', before it kills Emacs.

       Because `kill-emacs' can be called in situations where user
       interaction is impossible (e.g., when the terminal is
       disconnected), functions on this hook should not attempt to
       interact with the user.  If you want to interact with the user
       when Emacs is shutting down, use `kill-emacs-query-functions',
       described below.

So I think the hook should be added to kill-emacs-query-functions,
since we still want to ask the user that question, when appropriate.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]