Subject: Re: bug#16583: Possible bug in inhibit-quit/abort-recursive-edit

From: Noam Postavsky <[email-masked]>
Date: Fri, 09 Feb 2018 22:17:09 -0500

tags 16583 notabug
close 16583
quit

E Sabof <[email-masked]> writes:

> (condition-case error
>     (let ((inhibit-quit t))
>       (sleep-for 5))
>   (quit (goto-char (point-max))
>         (insert "QUIT")))
>
> I understand why "QUIT" might not be displayed -- the signal is not
> guaranteed to be sent immediately after then end of (let). But,
> shouldn't abort-recursive-edit also cause Quit to be displayed in the
> minibuffer? 

I don't see any bug here: abort-recursive-edit doesn't signal `quit', so
the condition-case is not triggered.

> It so happens that I have abort-recursive-edit bound to C-g, and
> ((inhibit-quit t)) seems to discard all sent "C-g"s.

I think it's rather that Emacs doesn't process input events during
sleep-for.  If you want to handle input use sit-for.