summaryrefslogtreecommitdiff
path: root/sys/dev/wscons/wsdisplay.c
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2009-09-14 04:10:43 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2009-09-14 04:10:43 +0000
commit075197888acc9d297b58ab06f267f9fe9f19ff08 (patch)
treed338d806ae74d30781b940db47538f63e1808565 /sys/dev/wscons/wsdisplay.c
parent4248e34dda8652ddd46e2885282d566d8168375c (diff)
Correctly empty the tty rings in wsdisplaystart() if the display is
in SCR_GRAPHICS mode; spotted by martynas@
Diffstat (limited to 'sys/dev/wscons/wsdisplay.c')
-rw-r--r--sys/dev/wscons/wsdisplay.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/dev/wscons/wsdisplay.c b/sys/dev/wscons/wsdisplay.c
index 4e3cbc84fde..ae76e78c419 100644
--- a/sys/dev/wscons/wsdisplay.c
+++ b/sys/dev/wscons/wsdisplay.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: wsdisplay.c,v 1.93 2009/09/05 14:30:24 miod Exp $ */
+/* $OpenBSD: wsdisplay.c,v 1.94 2009/09/14 04:10:42 miod Exp $ */
/* $NetBSD: wsdisplay.c,v 1.82 2005/02/27 00:27:52 perry Exp $ */
/*
@@ -1456,7 +1456,8 @@ wsdisplaystart(struct tty *tp)
#endif
done = (*scr->scr_dconf->wsemul->output)
(scr->scr_dconf->wsemulcookie, buf, n, 0);
- }
+ } else
+ done = n;
ndflush(&tp->t_outq, done);
if (done == n) {
@@ -1466,7 +1467,8 @@ wsdisplaystart(struct tty *tp)
if (!(scr->scr_flags & SCR_GRAPHICS)) {
done = (*scr->scr_dconf->wsemul->output)
(scr->scr_dconf->wsemulcookie, buf, n, 0);
- }
+ } else
+ done = n;
ndflush(&tp->t_outq, done);
}
}