Merge pull request #6283 from magicrobotmonkey/upstream

fix missing stdin in _parallel_runner

Tested with GIST https://gist.github.com/risaacson/7290d30a612e0c70ea1b.
Passes "make tests"
Passes non_destructive tests.
This commit is contained in:
Richard Isaacson 2014-03-10 14:38:56 -05:00
commit 4993cb57f4

View file

@ -1075,9 +1075,17 @@ class Runner(object):
job_queue.put(host)
result_queue = manager.Queue()
try:
fileno = sys.stdin.fileno()
except ValueError:
fileno = None
workers = []
for i in range(self.forks):
new_stdin = os.fdopen(os.dup(sys.stdin.fileno()))
if fileno is not None:
new_stdin = os.fdopen(os.dup(fileno))
else:
new_stdin = None
prc = multiprocessing.Process(target=_executor_hook,
args=(job_queue, result_queue, new_stdin))
prc.start()