diff options
| author | João Távora | 2025-12-08 21:39:34 +0000 |
|---|---|---|
| committer | João Távora | 2025-12-08 21:41:31 +0000 |
| commit | 6caf598ac49b3ed592f22e31307fe71e71490f2b (patch) | |
| tree | c1419d430689212e85b98ee4ac735167a77b0f44 /src | |
| parent | 74348a722a47b9592f30e276be2c1381f36eb824 (diff) | |
| download | emacs-6caf598ac49b3ed592f22e31307fe71e71490f2b.tar.gz emacs-6caf598ac49b3ed592f22e31307fe71e71490f2b.zip | |
Jsonrpc: defend against very large stderr lines
In https://github.com/joaotavora/rassumfrassum/issues/1 we found
a language server that emits very large single-line messages
(5MB): that eventually end up in Eglot's stderr. With the
output arriving in chunks into the stderr buffer, this creates a
significant slowdown of '[stderr] nil' lines, which eventually
clogs up the stdout JSONRPC communication.
This fix exits the `jsonrpc--forwarding-buffer` function early
if the forward-line call didn't actually move to a new line.
* lisp/jsonrpc.el (jsonrpc--forwarding-buffer): Fix.
(Version): Bump to 1.0.27.
Diffstat (limited to 'src')
0 files changed, 0 insertions, 0 deletions