From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Tue, 16 Aug 2022 09:52:10 +0000 (-0700) Subject: gh-95808: Add missing early returns in _asynciomodule.c (GH-95809) X-Git-Tag: v3.11.0rc2~106 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=af3e491d2bb02988d9f8d24ac2ba6f0b22b2130a;p=thirdparty%2FPython%2Fcpython.git gh-95808: Add missing early returns in _asynciomodule.c (GH-95809) (cherry picked from commit b2afe482f21b826d53886a69ea2c99d0d940c59a) Co-authored-by: Yury Selivanov --- diff --git a/Modules/_asynciomodule.c b/Modules/_asynciomodule.c index cb7afecd8f2c..10679be2ef19 100644 --- a/Modules/_asynciomodule.c +++ b/Modules/_asynciomodule.c @@ -631,8 +631,6 @@ create_cancelled_error(FutureObj *fut) } else { exc = PyObject_CallOneArg(asyncio_CancelledError, msg); } - PyException_SetContext(exc, fut->fut_cancelled_exc); - Py_CLEAR(fut->fut_cancelled_exc); return exc; } @@ -640,6 +638,9 @@ static void future_set_cancelled_error(FutureObj *fut) { PyObject *exc = create_cancelled_error(fut); + if (exc == NULL) { + return; + } PyErr_SetObject(asyncio_CancelledError, exc); Py_DECREF(exc); }