win_getpass(): if sys.stdin is not sys.__stdin__, use
default_getpass().  This should prevent hanging when it is called in
IDLE.

Fixes SF bug #455648.
diff --git a/Lib/getpass.py b/Lib/getpass.py
index e811890..eefb1f9 100644
--- a/Lib/getpass.py
+++ b/Lib/getpass.py
@@ -42,6 +42,8 @@
 
 def win_getpass(prompt='Password: '):
     """Prompt for password with echo off, using Windows getch()."""
+    if sys.stdin is not sys.__stdin__:
+        return default_getpass(prompt)
     import msvcrt
     for c in prompt:
         msvcrt.putch(c)