https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=fa22eea29d2f3214e9e241c34efce658574d3290
commit fa22eea29d2f3214e9e241c34efce658574d3290 Author: Takashi Yano via Cygwin-patches <[email protected]> Date: Fri Jan 15 17:32:09 2021 +0900 Cygwin: pty: Add workaround for rlwrap 0.40 or later. - The workaround for rlwrap introduced by commit 8199b0cc does not take effect for rlwrap 0.40 or later. This patch add a workaround for rlwrap 0.40 or later as well. Diff: --- winsup/cygwin/fhandler_tty.cc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/winsup/cygwin/fhandler_tty.cc b/winsup/cygwin/fhandler_tty.cc index 77f7bfe43..8ff74cdde 100644 --- a/winsup/cygwin/fhandler_tty.cc +++ b/winsup/cygwin/fhandler_tty.cc @@ -1720,6 +1720,11 @@ int fhandler_pty_master::tcgetattr (struct termios *t) { *t = cygwin_shared->tty[get_minor ()]->ti; + /* Workaround for rlwrap v0.40 or later */ + if (get_ttyp ()->pcon_start) + t->c_lflag &= ~(ICANON | ECHO); + if (get_ttyp ()->h_pseudo_console) + t->c_iflag &= ~ICRNL; return 0; }
