https://github.com/python/cpython/commit/3ad66bf10dbb929bcf8efd889e56a9b9068319ca
commit: 3ad66bf10dbb929bcf8efd889e56a9b9068319ca
branch: main
author: sobolevn <[email protected]>
committer: sobolevn <[email protected]>
date: 2026-06-26T14:41:55+03:00
summary:
gh-152156: Fix a crash in `interpeters.create` under limited memory conditions
(#152163)
files:
A Misc/NEWS.d/next/Library/2026-06-25-10-07-54.gh-issue-152156.gscPU9.rst
M Modules/_interpchannelsmodule.c
diff --git
a/Misc/NEWS.d/next/Library/2026-06-25-10-07-54.gh-issue-152156.gscPU9.rst
b/Misc/NEWS.d/next/Library/2026-06-25-10-07-54.gh-issue-152156.gscPU9.rst
new file mode 100644
index 00000000000000..30e561274dc50c
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2026-06-25-10-07-54.gh-issue-152156.gscPU9.rst
@@ -0,0 +1,2 @@
+Fix a possible crash in :func:`concurrent.interpreters.create` under limited
+memory conditions.
diff --git a/Modules/_interpchannelsmodule.c b/Modules/_interpchannelsmodule.c
index 3614890757d69d..05957081079d4a 100644
--- a/Modules/_interpchannelsmodule.c
+++ b/Modules/_interpchannelsmodule.c
@@ -2951,10 +2951,8 @@ channelsmod_create(PyObject *self, PyObject *args,
PyObject *kwds)
&cidobj);
if (handle_channel_error(err, self, cid)) {
assert(cidobj == NULL);
- err = channel_destroy(&_globals.channels, cid);
- if (handle_channel_error(err, self, cid)) {
- // XXX issue a warning?
- }
+ assert(PyErr_Occurred());
+ (void)channel_destroy(&_globals.channels, cid);
return NULL;
}
assert(cidobj != NULL);
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]