We currently only support getpass, which does not echo at all, for git_terminal_prompt on Windows. The Windows console is perfectly capable of doing this, so let's make it so. This implementation tries to reuse the /dev/tty-code as much as possible. The big reason that this becomes a bit hairy is that Ctrl+C needs to be handled correctly, so we don't leak the console state to a non-echoing setting when a user aborts. Windows makes this bit a little bit tricky, in that we need to implement SIGINT for fgetc. However, I suspect that this is a good thing to do in the first place. An earlier iteration was also breifly discussed here: http://mid.gmane.org/CABPQNSaUCEDU4+2N63n0k_XwSXOP_iFZG3GEYSPSBPcSVV8wRQ@xxxxxxxxxxxxxx The series can also be found here, only with an extra patch that makes the (interactive) testing a bit easier: https://github.com/kusma/git/tree/work/terminal-cleanup Erik Faye-Lund (5): mingw: make fgetc raise SIGINT if apropriate compat/terminal: factor out echo-disabling compat/terminal: separate input and output handles mingw: reuse tty-version of git_terminal_prompt mingw: get rid of getpass implementation compat/mingw.c | 91 +++++++++++++++++++++++++++----------- compat/mingw.h | 8 +++- compat/terminal.c | 129 ++++++++++++++++++++++++++++++++++++++++-------------- 3 files changed, 169 insertions(+), 59 deletions(-) -- 1.8.0.7.gbeffeda -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html