Flush data on tty open. Also reset colour before clearing line/screen.

This commit is contained in:
Nicholas Marriott
2007-11-27 21:07:38 +00:00
parent 7034ba236f
commit c6384a765b
3 changed files with 13 additions and 5 deletions

8
tty.c
View File

@ -1,4 +1,4 @@
/* $Id: tty.c,v 1.4 2007-11-27 20:01:30 nicm Exp $ */
/* $Id: tty.c,v 1.5 2007-11-27 21:07:38 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -51,7 +51,7 @@ int
tty_open(struct tty *tty, char **cause)
{
struct termios tio;
int error;
int error, what;
tty->fd = open(tty->path, O_RDWR|O_NONBLOCK);
if (tty->fd == -1) {
@ -103,6 +103,10 @@ tty_open(struct tty *tty, char **cause)
if (tcsetattr(tty->fd, TCSANOW, &tio) != 0)
fatal("tcsetattr failed");
what = 0;
if (ioctl(tty->fd, TIOCFLUSH, &what) != 0)
fatal("ioctl(TIOCFLUSH)");
if (enter_ca_mode != NULL)
tty_puts(tty, enter_ca_mode);
if (keypad_xmit != NULL)