summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa/rc.c
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1995-07-29 08:33:13 +0000
committerbde <bde@FreeBSD.org>1995-07-29 08:33:13 +0000
commit76510cf9d286e2b89a8cdc6664328fd420bcd4c4 (patch)
tree3f2510e6e1376b5f48c1fbe57f418186245fe80b /sys/i386/isa/rc.c
parent598027ae378783940e338107ba8df608875baf32 (diff)
downloadFreeBSD-src-76510cf9d286e2b89a8cdc6664328fd420bcd4c4.zip
FreeBSD-src-76510cf9d286e2b89a8cdc6664328fd420bcd4c4.tar.gz
Don't let IXOFF or ECHONL stop the setting of TS_CAN_BYPASS_L_RINT. IXOFF
is handled at a low level, and ECHONL only applies if ICANON is set, although tty.c sometimes bogusly applies it when ICANON isn't set.
Diffstat (limited to 'sys/i386/isa/rc.c')
-rw-r--r--sys/i386/isa/rc.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/sys/i386/isa/rc.c b/sys/i386/isa/rc.c
index e496a48..ec93d68 100644
--- a/sys/i386/isa/rc.c
+++ b/sys/i386/isa/rc.c
@@ -1495,13 +1495,11 @@ disc_optim(tp, t, rc)
struct rc_chans *rc;
{
- if (!(t->c_iflag & (ICRNL | IGNCR | IMAXBEL | INLCR | ISTRIP
- | IXOFF | IXON))
+ if (!(t->c_iflag & (ICRNL | IGNCR | IMAXBEL | INLCR | ISTRIP | IXON))
&& (!(t->c_iflag & BRKINT) || (t->c_iflag & IGNBRK))
- && (!(t->c_iflag & PARMRK) ||
- (t->c_iflag & (IGNPAR|IGNBRK)) == (IGNPAR|IGNBRK))
- && !(t->c_lflag & (ECHO | ECHONL | ICANON | IEXTEN | ISIG
- | PENDIN))
+ && (!(t->c_iflag & PARMRK)
+ || (t->c_iflag & (IGNPAR | IGNBRK)) == (IGNPAR | IGNBRK))
+ && !(t->c_lflag & (ECHO | ICANON | IEXTEN | ISIG | PENDIN))
&& linesw[tp->t_line].l_rint == ttyinput)
tp->t_state |= TS_CAN_BYPASS_L_RINT;
else
OpenPOWER on IntegriCloud