From d95e2a74ed7eebd2f76e2ad366f92f2cbedcd296 Mon Sep 17 00:00:00 2001 From: mcpcpc Date: Thu, 17 Sep 2020 11:15:57 -0400 Subject: retest write --- kirc.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'kirc.c') diff --git a/kirc.c b/kirc.c index 6fe1b8a..917ba9c 100644 --- a/kirc.c +++ b/kirc.c @@ -77,10 +77,11 @@ raw(char *fmt, ...) { if (verb) printf("<< %s", cmd_str); if (olog) log_append(cmd_str, olog); - if (write(conn, cmd_str, strlen(cmd_str)) < 0) { - perror("write"); - exit(EXIT_FAILURE); - } + + ssize_t rc; + do { + rc = write(conn, cmd_str, strlen(cmd_str)); + } while ((rc < 0) && (errno == EINTR || errno == EAGAIN || errno == EWOULDBLOCK)); free(cmd_str); } -- cgit v1.2.3