summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/fhandler_tty.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/winsup/cygwin/fhandler_tty.cc b/winsup/cygwin/fhandler_tty.cc
index 04a9a2bf5..5f38ca8d3 100644
--- a/winsup/cygwin/fhandler_tty.cc
+++ b/winsup/cygwin/fhandler_tty.cc
@@ -1109,6 +1109,11 @@ fhandler_pty_slave::tcgetattr (struct termios *t)
{
reset_switch_to_pcon ();
*t = get_ttyp ()->ti;
+ /* Workaround for rlwrap */
+ if (get_ttyp ()->pcon_start)
+ t->c_lflag &= ~ICANON;
+ else if (get_ttyp ()->h_pseudo_console)
+ t->c_iflag &= ~ICRNL;
return 0;
}