Make sure readline has been imported before duping any stdio handles--otherwise pyreadline fails to connect to the correct handle for the console's stdout/in.
This commit is contained in:
parent
cd3a441304
commit
924a9667e1
|
@ -308,6 +308,14 @@ class FDCapture:
|
|||
""" Capture IO to/from a given os-level filedescriptor. """
|
||||
|
||||
def __init__(self, targetfd, tmpfile=None):
|
||||
# ensure readline is imported so that it attaches to the correct
|
||||
# stdio handles on Windows
|
||||
if targetfd in (0, 1, 2):
|
||||
try:
|
||||
import readline
|
||||
except ImportError:
|
||||
pass
|
||||
|
||||
self.targetfd = targetfd
|
||||
try:
|
||||
self.targetfd_save = os.dup(self.targetfd)
|
||||
|
|
Loading…
Reference in New Issue