diff -r 527b77a63cc9 asyncio/base_subprocess.py --- a/asyncio/base_subprocess.py Fri Jan 09 15:38:48 2015 +0100 +++ b/asyncio/base_subprocess.py Fri Jan 09 15:45:25 2015 +0100 @@ -182,6 +182,7 @@ def connection_lost(self, exc): self.disconnected = True self.proc._pipe_connection_lost(self.fd, exc) + self.proc = None def pause_writing(self): self.proc._protocol.pause_writing() diff -r 527b77a63cc9 asyncio/futures.py --- a/asyncio/futures.py Fri Jan 09 15:38:48 2015 +0100 +++ b/asyncio/futures.py Fri Jan 09 15:45:25 2015 +0100 @@ -405,5 +405,5 @@ new_future.add_done_callback(_check_cancel_other) fut.add_done_callback( lambda future: loop.call_soon_threadsafe( - new_future._copy_state, fut)) + new_future._copy_state, future)) return new_future diff -r 527b77a63cc9 asyncio/selectors.py --- a/asyncio/selectors.py Fri Jan 09 15:38:48 2015 +0100 +++ b/asyncio/selectors.py Fri Jan 09 15:45:25 2015 +0100 @@ -256,6 +256,7 @@ def close(self): self._fd_to_key.clear() + self._map = None def get_map(self): return self._map