[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