GNU bug report logs -
#63253
29.0.90; with-delayed-message fails in combination with inhibit-message
Previous Next
Reported by: Daniel Mendler <mail <at> daniel-mendler.de>
Date: Wed, 3 May 2023 19:56:02 UTC
Severity: normal
Found in version 29.0.90
Done: Daniel Mendler <mail <at> daniel-mendler.de>
Bug is archived. No further changes may be made.
Full log
Message #35 received at 63253 <at> debbugs.gnu.org (full text, mbox):
> From: Stefan Monnier <monnier <at> iro.umontreal.ca>
> Cc: Lars Ingebrigtsen <larsi <at> gnus.org>, mail <at> daniel-mendler.de,
> 63253 <at> debbugs.gnu.org
> Date: Tue, 09 May 2023 22:31:09 -0400
>
> > Thanks, I think you should install this on the emacs-29 branch. And I
> > think a similar change is needed in clear_message, so it doesn't call
> > clear-message-function.
>
> OK, done.
Thanks.
> > But what does this mean for with-delayed-message and
> > funcall-with-delayed-message? These were introduced in Emacs 29, but
> > if we say that atimers cannot be used to safely run arbitrary Lisp,
> > then we should somehow make them safer, perhaps by having in
> > with_delayed_message_display a subset of code message3, without the
> > calls to Lisp. WDYT?
>
> The code already falls back to a default behavior of displaying the
> message in the echo area when calls to ELisp can't be used.
You mean, the changes that you just installed? If so, that is AFAIU
conditioned on garbage_collection_inhibited, which doesn't necessarily
disable Lisp calls from delayed messages in all situations. Plus, we
might at some point decide that garbage_collection_inhibited is not
necessary in probably_quit.
What I meant was to completely disable customizing
set-message-function for delayed messages. We don't have to support
that, and the fact that we call 'message' is just an implementation
detail. If nothing else, this will make the effect on delayed
messages consistent no matter when and how they are actually
displayed.
This bug report was last modified 174 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.