diff --git a/mitogen/core.py b/mitogen/core.py index d10a90e3..76ece87c 100644 --- a/mitogen/core.py +++ b/mitogen/core.py @@ -3594,7 +3594,10 @@ class ExternalContext(object): else: self.parent = Context(self.router, parent_id, 'parent') - in_fp = os.fdopen(os.dup(self.config.get('in_fd', 100)), 'rb', 0) + in_fd = self.config.get('in_fd', 100) + in_fp = os.fdopen(os.dup(in_fd), 'rb', 0) + os.close(in_fd) + out_fp = os.fdopen(os.dup(self.config.get('out_fd', 1)), 'wb', 0) self.stream = MitogenProtocol.build_stream(self.router, parent_id) self.stream.accept(in_fp, out_fp)