emacs-devel
[Top][All Lists]
Advanced

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

Re: emacs-29 8bf4cdcf79: Avoid recursive process filters in lisp/jsonrpc


From: João Távora
Subject: Re: emacs-29 8bf4cdcf79: Avoid recursive process filters in lisp/jsonrpc.el (bug#60088)
Date: Fri, 16 Dec 2022 14:46:42 +0000

On Fri, Dec 16, 2022 at 2:36 PM Stefan Monnier <monnier@iro.umontreal.ca> wrote:

> >     Avoid recursive process filters in lisp/jsonrpc.el (bug#60088)
>
> BTW, this has bitten us in various other cases, we should fix it once
> and for all in the C code by marking the process as "busy" while we're
> running the filters so we never run filters recursively.
> [ If we ever bump into a case where recursive filters are needed, we
>   can then add some function to remove the "busy" mark.
>   Calling (accept-process-output PROC) should naturally mark PROC as
>   not-busy.  ]


I thought about that too, but I don't know what other implications
it might have. If it's somehow feasible, isn't it easier to just change
process-send-input to _not_ accept output?  That's the
only output-accepting primitive that makes sense to call from
within a process filter (and that's what happened here).  I can't
see how sit-for is useful from within a process-filter and neither
accept-process-output.  Almost certainly a bug, right? So why
can't we make it so that they just error when called under those
circumstances?

João

reply via email to

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