On 28/10/25 14:44, Marc-André Lureau wrote:
Hi
On Wed, Oct 22, 2025 at 7:09 PM Philippe Mathieu-Daudé
<[email protected]> wrote:
Cc: [email protected]
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
---
If ignoring this is deliberate, this must be described in a comment
to avoid any confusion.
Agree
Reviewed-by: Marc-André Lureau <[email protected]>
Thanks!
This is from commit 4f7689f08 ("chardev/char-pty: Avoid losing bytes
when the other side just (re-)connected")
note: It's mildly annoying that the pty backend has still
!s->connected and we are writing.
Per the comment, "already re-connected, but timer not fired yet".
I wonder why the frontend is not
respecting the backend opened state, probably some race or buffering.
Do you mind opening an issue? I'm not familiar with this code.
---
chardev/char-pty.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/chardev/char-pty.c b/chardev/char-pty.c
index b066f014126..652b0bd9e73 100644
--- a/chardev/char-pty.c
+++ b/chardev/char-pty.c
@@ -125,7 +125,7 @@ static int char_pty_chr_write(Chardev *chr, const uint8_t
*buf, int len)
rc = RETRY_ON_EINTR(g_poll(&pfd, 1, 0));
g_assert(rc >= 0);
if (!(pfd.revents & G_IO_HUP) && (pfd.revents & G_IO_OUT)) {
- io_channel_send(s->ioc, buf, len);
+ return io_channel_send(s->ioc, buf, len);
}
return len;
--
2.51.0