From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Sat, 22 Jun 2024 11:14:46 +0000 (+0200) Subject: [3.13] gh-120811: Fix reference leak upon `_PyContext_Exit` failure (GH-120812) ... X-Git-Tag: v3.13.0b3~43 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a860b1d60b8e3d09c58daf6996a38606f407a009;p=thirdparty%2FPython%2Fcpython.git [3.13] gh-120811: Fix reference leak upon `_PyContext_Exit` failure (GH-120812) (#120843) gh-120811: Fix reference leak upon `_PyContext_Exit` failure (GH-120812) (cherry picked from commit aed31beca9a54b85a1392631a48da80602210f18) Co-authored-by: Peter Co-authored-by: Kumar Aditya --- diff --git a/Misc/NEWS.d/next/Library/2024-06-21-14-32-56.gh-issue-120811.eBmVTV.rst b/Misc/NEWS.d/next/Library/2024-06-21-14-32-56.gh-issue-120811.eBmVTV.rst new file mode 100644 index 000000000000..62cd7b562047 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2024-06-21-14-32-56.gh-issue-120811.eBmVTV.rst @@ -0,0 +1 @@ +Fix possible memory leak in :meth:`contextvars.Context.run`. diff --git a/Python/context.c b/Python/context.c index 3937819b3c38..63318d1e5974 100644 --- a/Python/context.c +++ b/Python/context.c @@ -661,6 +661,7 @@ context_run(PyContext *self, PyObject *const *args, ts, args[0], args + 1, nargs - 1, kwnames); if (_PyContext_Exit(ts, (PyObject *)self)) { + Py_XDECREF(call_result); return NULL; }