Make resizewin(1) do flushing by using TCSAFLUSH instead of TCSANOW

followed by tcflush(3).  This works just as well and is more elegant.

Suggested by:	bde
MFC after:	2 weeks
Sponsored by:	DARPA, AFRL
This commit is contained in:
Edward Tomasz Napierala 2017-06-26 13:14:41 +00:00
parent 6a3450e178
commit dd99f75ce6
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=320360

View File

@ -91,21 +91,16 @@ main(int argc, char **argv)
exit(0);
}
/* Disable echo */
/* Disable echo, drain the input, and flush the output */
if (tcgetattr(fd, &old) == -1)
exit(1);
new = old;
new.c_cflag |= (CLOCAL | CREAD);
new.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG);
if (tcsetattr(fd, TCSANOW, &new) == -1)
if (tcsetattr(fd, TCSAFLUSH, &new) == -1)
exit(1);
/* Discard input received so far */
error = tcflush(fd, TCIOFLUSH);
if (error != 0)
warn("tcflush");
if (write(fd, query, sizeof(query)) != sizeof(query)) {
error = 1;
goto out;