changeset: 86497:4019694a1ce4 user: Antoine Pitrou date: Sun Oct 20 00:54:10 2013 +0200 files: Lib/asyncio/base_events.py Lib/asyncio/proactor_events.py Lib/asyncio/selector_events.py description: Issue #19299: fix refleak test failures in test_asyncio diff -r b4a325275fb0 -r 4019694a1ce4 Lib/asyncio/base_events.py --- a/Lib/asyncio/base_events.py Sat Oct 19 16:15:58 2013 -0400 +++ b/Lib/asyncio/base_events.py Sun Oct 20 00:54:10 2013 +0200 @@ -185,6 +185,14 @@ """ self.call_soon(_raise_stop_error) + def close(self): + self._ready.clear() + self._scheduled.clear() + executor = self._default_executor + if executor is not None: + self._default_executor = None + executor.shutdown(wait=False) + def is_running(self): """Returns running status of event loop.""" return self._running diff -r b4a325275fb0 -r 4019694a1ce4 Lib/asyncio/proactor_events.py --- a/Lib/asyncio/proactor_events.py Sat Oct 19 16:15:58 2013 -0400 +++ b/Lib/asyncio/proactor_events.py Sun Oct 20 00:54:10 2013 +0200 @@ -276,6 +276,7 @@ self._proactor.close() self._proactor = None self._selector = None + super().close() def sock_recv(self, sock, n): return self._proactor.recv(sock, n) diff -r b4a325275fb0 -r 4019694a1ce4 Lib/asyncio/selector_events.py --- a/Lib/asyncio/selector_events.py Sat Oct 19 16:15:58 2013 -0400 +++ b/Lib/asyncio/selector_events.py Sun Oct 20 00:54:10 2013 +0200 @@ -56,6 +56,7 @@ self._close_self_pipe() self._selector.close() self._selector = None + super().close() def _socketpair(self): raise NotImplementedError