[PATCH] Cygwin: pty: Clear discard_input flag on master write()
Takashi Yano
takashi.yano@nifty.ne.jp
Thu Mar 19 17:46:34 GMT 2026
Currently, the first transfer_input() after Ctrl-C does not work
because discard_input flag remains asserted. This can cause loosing
typeahead input for non-cygwin app after Ctrl-C. With this patch,
the discard_input flag is cleared on master write() because the
input is new valid input after discarding input.
Fixes: 4e16e575db04 ("Cygwin: pty: Discard input already accepted on interrupt.")
Signed-off-by: Takashi Yano <takashi.yano@nifty.ne.jp>
Reviewed-by:
---
winsup/cygwin/fhandler/pty.cc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/winsup/cygwin/fhandler/pty.cc b/winsup/cygwin/fhandler/pty.cc
index 0c50e50f5..c05462d1f 100644
--- a/winsup/cygwin/fhandler/pty.cc
+++ b/winsup/cygwin/fhandler/pty.cc
@@ -2224,6 +2224,8 @@ fhandler_pty_master::write (const void *ptr, size_t len)
push_process_state process_state (PID_TTYOU);
+ get_ttyp ()->discard_input = false;
+
if (get_ttyp ()->pcon_start)
{ /* Reaches here when pseudo console initialization is on going. */
/* Pseudo condole support uses "CSI6n" to get cursor position.
--
2.51.0
More information about the Cygwin-patches
mailing list