From: Yury Selivanov Date: Mon, 15 Aug 2022 23:32:40 +0000 (-0700) Subject: gh-95808: Add missing early returns in _asynciomodule.c (#95809) X-Git-Tag: v3.12.0a1~643 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b2afe482f21b826d53886a69ea2c99d0d940c59a;p=thirdparty%2FPython%2Fcpython.git gh-95808: Add missing early returns in _asynciomodule.c (#95809) --- diff --git a/Modules/_asynciomodule.c b/Modules/_asynciomodule.c index f94819cad24e..9d2f83bf6c73 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); }