Don't close sys.stdin with quit() if sys.stdin wraps fd 0. Otherwise it will raise a warning: Lib/io.py:1221: RuntimeWarning: Trying to close unclosable fd
This commit is contained in:
parent
c90584ecc1
commit
862543aa85
|
@ -247,7 +247,12 @@ def setquit():
|
|||
# Shells like IDLE catch the SystemExit, but listen when their
|
||||
# stdin wrapper is closed.
|
||||
try:
|
||||
sys.stdin.close()
|
||||
fd = -1
|
||||
if hasattr(sys.stdin, "fileno"):
|
||||
fd = sys.stdin.fileno()
|
||||
if fd != 0:
|
||||
# Don't close stdin if it wraps fd 0
|
||||
sys.stdin.close()
|
||||
except:
|
||||
pass
|
||||
raise SystemExit(code)
|
||||
|
|
Loading…
Reference in New Issue