From 99d8436f5a3bbdddbfeaba59408874d84f04dfb3 Mon Sep 17 00:00:00 2001 From: Boris Faure Date: Mon, 2 Dec 2019 23:42:38 +0100 Subject: [PATCH] termpty: retry read() on EINTR --- src/bin/termpty.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/termpty.c b/src/bin/termpty.c index 879135f1..61f78cb4 100644 --- a/src/bin/termpty.c +++ b/src/bin/termpty.c @@ -268,7 +268,7 @@ _fd_read_do(Termpty *ty, Ecore_Fd_Handler *fd_handler, Eina_Bool false_on_empty) } errno = 0; len = read(ty->fd, rbuf, len); - if ((len < 0 && errno != EAGAIN) || + if ((len < 0 && !(errno == EAGAIN || errno == EINTR)) || (len == 0 && errno != 0)) { /* Do not print error if the child has exited */