From 606c833f93b2dc585925e70c6fdf19cd794bf2ff Mon Sep 17 00:00:00 2001 From: Miguel de Icaza Date: Mon, 5 Apr 1999 20:18:16 +0000 Subject: [PATCH] 1999-04-05 Federico Mena Quintero * cons.saver.c (main): dup2() may be interrupted; take this into account. Do we need to fcntl() stderr, or is it enough to close() it before recreating it? --- src/ChangeLog | 6 ++++++ src/cons.saver.c | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/ChangeLog b/src/ChangeLog index af0fe6d31..b1036da56 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +1999-04-05 Federico Mena Quintero + + * cons.saver.c (main): dup2() may be interrupted; take this into + account. Do we need to fcntl() stderr, or is it enough to close() + it before recreating it? + 1999-03-30 Federico Mena Quintero * dlg.c (dlg_run_done): Do not call the callback of a NULL current diff --git a/src/cons.saver.c b/src/cons.saver.c index 20cc5fc5e..ac0bdedba 100644 --- a/src/cons.saver.c +++ b/src/cons.saver.c @@ -26,6 +26,7 @@ #include #include #include +#include #ifdef HAVE_UNISTD_H # include #endif @@ -326,7 +327,8 @@ int main (int argc, char **argv) exit (1); if (stderr_fd != 2) - dup2 (stderr_fd, 2); + while (dup2 (stderr_fd, 2) == -1 && errno == EINTR) + ; if (argc != 2){ /* Wrong number of arguments */