gh-114177: avoid calling connection lost callbacks when loop is already closed in asyncio subprocess (#134508)

This commit is contained in:
Kumar Aditya
2025-05-23 10:03:16 +05:30
committed by GitHub
parent 8dbc119719
commit 5804ee7b46
2 changed files with 7 additions and 1 deletions
+6 -1
View File
@@ -104,7 +104,12 @@ class BaseSubprocessTransport(transports.SubprocessTransport):
for proto in self._pipes.values():
if proto is None:
continue
proto.pipe.close()
# See gh-114177
# skip closing the pipe if loop is already closed
# this can happen e.g. when loop is closed immediately after
# process is killed
if self._loop and not self._loop.is_closed():
proto.pipe.close()
if (self._proc is not None and
# has the child process finished?
@@ -0,0 +1 @@
Fix :mod:`asyncio` to not close subprocess pipes which would otherwise error out when the event loop is already closed.