Do the check for lacking sys.stdin.fileno() *before* testing for
Windows. If sys.stdin doesn't appear to be a real file (characterized by having a working fileno()), don't use any console specific methods -- go straight to the default.
This commit is contained in:
parent
ef0056ae1a
commit
0238a25b20
|
@ -19,6 +19,10 @@ def getpass(prompt='Password: '):
|
|||
"""
|
||||
|
||||
import sys
|
||||
try:
|
||||
fd = sys.stdin.fileno()
|
||||
except:
|
||||
return default_getpass(prompt)
|
||||
try:
|
||||
import termios, TERMIOS
|
||||
except ImportError:
|
||||
|
@ -29,10 +33,6 @@ def getpass(prompt='Password: '):
|
|||
else:
|
||||
return win_getpass(prompt)
|
||||
|
||||
try:
|
||||
fd = sys.stdin.fileno()
|
||||
except:
|
||||
return default_getpass(prompt)
|
||||
old = termios.tcgetattr(fd) # a copy to save
|
||||
new = old[:]
|
||||
|
||||
|
|
Loading…
Reference in New Issue