@@ -713,10 +713,6 @@ def _check_exec_result(self, pid, returncode, orig_executable, cwd,
713713
714714
715715class _UnixSubprocessTransport (base_subprocess .BaseSubprocessTransport ):
716- def __init__ (self , * args , ** kwargs ):
717- super ().__init__ (* args , ** kwargs )
718- self ._failed_before_exec = False
719-
720716 @coroutine
721717 def _start (self , args , shell , stdin , stdout , stderr , bufsize , ** kwargs ):
722718 with events .get_child_watcher () as watcher :
@@ -742,7 +738,7 @@ def _start(self, args, shell, stdin, stdout, stderr, bufsize, **kwargs):
742738 universal_newlines = False , bufsize = bufsize , ** kwargs )
743739 yield from exec_waiter
744740 except :
745- self ._failed_before_exec = True
741+ self ._failed_before_start = True
746742 # TODO stdin is probably closed by proc, but what about stdin_w
747743 # so far? check this
748744 if stdin_w is not None :
@@ -758,17 +754,6 @@ def _start(self, args, shell, stdin, stdout, stderr, bufsize, **kwargs):
758754 def _child_watcher_callback (self , pid , returncode ):
759755 self ._loop .call_soon_threadsafe (self ._process_exited , returncode )
760756
761- @coroutine
762- def _wait (self ):
763- if self ._failed_before_exec :
764- # let loop._make_subprocess_transport() call transport._wait() when
765- # an excpetion is raised asynchronously during the setup of the
766- # transport, which garantees that necessary cleanup will be
767- # performed
768- return
769- else :
770- return (yield from super ()._wait ())
771-
772757
773758class AbstractChildWatcher :
774759 """Abstract base class for monitoring child processes.
0 commit comments