Mattias EngdegÄrd writes: > Thanks for testing. As you say, you probably want to fix this in Lisp in ERC > in any case and doing so does not appear to be very difficult. > > Partly for this reason I'm not insisting on the proposed C level fix. It does > seem to be a reasonable change though, and we usually prefer fixing a problem > to documenting it. Whatever happens, its insights have provided the key to fixing things on the ERC side. So, at the very least, it'll always live on in spirit! . . . Fernando, Please forget about the packet-capture thing. Setting that up and poring over the results is kind of a drag. As far as trying out patches, there's certainly no rush. While I'm sure you're probably all set, others wanting to play along may need a hand. I'm no Arch Linux wiz, but these steps have worked for me in the past: 1. cd ~/my-emacs-arch-repo 2. makepkg --syncdeps --nobuild 3. # if tarball cd ./src/emacs- && patch -p1 < /tmp/0002-*.patch && cd - # else if git git -C ./src/emacs- am /tmp/0002-*.patch 4. makepkg --force --noextract --holdver 5. sudo pacman -U ./emacs---x86_64.pkg.tar.zst For anyone who cares, there's (at least) one case in which this patch won't quite cut it. Right now, it assumes that in `send_process', when `sendto' returns -1 with errno as EAGAIN or EWOULDBLOCK, it's because there's a maxed-out buffer somewhere, presumably on account of the sender not buying into the lock-step acknowledgment flow prescribed by the ancient spec. But if there's a non-remote chance that it could be something else unrelated to a non-compliant sender, that could be problematic because a fully compliant one might end up waiting for a receipt that never comes. Obviously, this never happens in my contrived repro scenario. But making room for it would probably involve looking after another timer, which I'd rather avoid if possible. Just FYI, I've added an additional patch that you can freely ignore (it won't apply cleanly on 27.2 anyway). Also (just for posterity), I've updated the helper script to simulate the pedantic case as well.