From f2e08a0325a28cdd3af1223312c9982525cd12bb Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Wed, 14 Jan 2015 22:44:41 +0100 Subject: Fix BaseEventLoop._create_connection_transport() Close the transport if the creation of the transport (if the waiter) gets an exception. --- asyncio/base_events.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/asyncio/base_events.py b/asyncio/base_events.py index 35c8d74..5df5b83 100644 --- a/asyncio/base_events.py +++ b/asyncio/base_events.py @@ -634,7 +634,12 @@ class BaseEventLoop(events.AbstractEventLoop): else: transport = self._make_socket_transport(sock, protocol, waiter) - yield from waiter + try: + yield from waiter + except Exception as exc: + transport.close() + raise + return transport, protocol @coroutine -- cgit v1.2.1