nicer fix from millert@

This commit is contained in:
Damien Miller 2005-05-24 16:39:03 +10:00
parent df548bc310
commit 308c8b147b
1 changed files with 5 additions and 4 deletions

View File

@ -137,10 +137,11 @@ restart:
(void)write(output, "\n", 1); (void)write(output, "\n", 1);
/* Restore old terminal settings and signals. */ /* Restore old terminal settings and signals. */
if (memcmp(&term, &oterm, sizeof(term)) != 0) if (memcmp(&term, &oterm, sizeof(term)) != 0) {
for (;tcsetattr(input, _T_FLUSH, &oterm) == -1 && while (tcsetattr(input, TCSANOW|TCSASOFT, &oterm) == -1 &&
errno == EINTR;) errno == EINTR)
; continue;
}
(void)sigaction(SIGALRM, &savealrm, NULL); (void)sigaction(SIGALRM, &savealrm, NULL);
(void)sigaction(SIGHUP, &savehup, NULL); (void)sigaction(SIGHUP, &savehup, NULL);
(void)sigaction(SIGINT, &saveint, NULL); (void)sigaction(SIGINT, &saveint, NULL);