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: Stefan Monnier
Subject: Re: emacs-29 8bf4cdcf79: Avoid recursive process filters in lisp/jsonrpc.el (bug#60088)
Date: Fri, 16 Dec 2022 09:56:49 -0500
User-agent: Gnus/5.13 (Gnus v5.13)

> 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?

To me, the only thing that *is* sure is that recursive invocations of
process filters are usually not expected (and because of
non-determinism they're usually not guaranteed either), so I'd focus
on this.

Trying to figure out when `process-send-input` should or shouldn't
accept process output (and from which processes) seems a lot more murky.

And I know `accept-process-output` can be (and is) used in
process filters.  I'd be surprised if the same didn't happen for
`sit-for`.


        Stefan




reply via email to

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