]> andersk Git - openssh.git/commitdiff
- (djm) [openbsd-compat/readpassphrase.c] bz #950: Retry tcsetattr to ensure
authordjm <djm>
Tue, 24 May 2005 05:54:27 +0000 (05:54 +0000)
committerdjm <djm>
Tue, 24 May 2005 05:54:27 +0000 (05:54 +0000)
   terminal modes are reset correctly. Fix from peak AT argo.troja.mff.cuni.cz;
   "looks ok" dtucker@

ChangeLog
openbsd-compat/readpassphrase.c

index 28ff1964401cd326ff0ea1bfd5219cb0f87f5ad4..cf96cd2b9cd87be9f5c99cf10bcd55bec0db5b1e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+20050512
+ - (djm) [openbsd-compat/readpassphrase.c] bz #950: Retry tcsetattr to ensure
+   terminal modes are reset correctly. Fix from peak AT argo.troja.mff.cuni.cz;
+   "looks ok" dtucker@
+
 20050512
  - (tim) [buildpkg.sh.in] missing ${PKG_INSTALL_ROOT} in init script
    hard link section. Bug 1038.
index 4ee1be5de283d00796c7484cd3b1858ec7e7bbba..b5f4d1ce4fea2bffbf49a08724776182f03462e1 100644 (file)
@@ -138,7 +138,9 @@ restart:
 
        /* Restore old terminal settings and signals. */
        if (memcmp(&term, &oterm, sizeof(term)) != 0)
-               (void)tcsetattr(input, _T_FLUSH, &oterm);
+               for (;tcsetattr(input, _T_FLUSH, &oterm) == -1 &&
+                   errno == EINTR;)
+                       ;
        (void)sigaction(SIGALRM, &savealrm, NULL);
        (void)sigaction(SIGHUP, &savehup, NULL);
        (void)sigaction(SIGINT, &saveint, NULL);
This page took 0.058042 seconds and 5 git commands to generate.