patch-sys_tty_c 531 B

12345678910111213141516171819202122
  1. $OpenBSD: patch-sys_tty_c,v 1.1 2013/12/08 15:09:15 espie Exp $
  2. --- sys/tty.c.orig Sun Dec 8 16:06:46 2013
  3. +++ sys/tty.c Sun Dec 8 16:07:22 2013
  4. @@ -76,8 +76,16 @@ Onew_ttyIcanon(on)
  5. if( on )
  6. buf.c_lflag |= (ECHO|ICANON);
  7. else buf.c_lflag &= ~(ECHO|ICANON);
  8. + if( on ){
  9. + buf.c_cc[VMIN] = 1;
  10. + buf.c_cc[VTIME] = 0;
  11. + buf.c_lflag &= ~ICANON;
  12. + }else{
  13. + buf.c_cc[VMIN] = 0;
  14. + buf.c_cc[VTIME] = ('D'-0x40);
  15. + buf.c_lflag |= ICANON;
  16. + }
  17. tcsetattr(fd, TCSADRAIN, &buf);
  18. - set_cbreak(fd,!on);
  19. close(fd);
  20. }
  21. #endif