From 79ceccd1ec6ef7e487da2916f32c6f0d1477bd3d Mon Sep 17 00:00:00 2001 From: Zackery Spytz Date: Thu, 26 Mar 2020 06:11:13 -0600 Subject: bpo-38410: Properly handle PySys_Audit() failures (GH-16657) --- Python/ceval.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'Python/ceval.c') diff --git a/Python/ceval.c b/Python/ceval.c index 836457d1a5..afaa6ff1b3 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -4785,17 +4785,18 @@ _PyEval_GetCoroutineOriginTrackingDepth(void) return tstate->coroutine_origin_tracking_depth; } -void +int _PyEval_SetAsyncGenFirstiter(PyObject *firstiter) { PyThreadState *tstate = _PyThreadState_GET(); if (PySys_Audit("sys.set_asyncgen_hook_firstiter", NULL) < 0) { - return; + return -1; } Py_XINCREF(firstiter); Py_XSETREF(tstate->async_gen_firstiter, firstiter); + return 0; } PyObject * @@ -4805,17 +4806,18 @@ _PyEval_GetAsyncGenFirstiter(void) return tstate->async_gen_firstiter; } -void +int _PyEval_SetAsyncGenFinalizer(PyObject *finalizer) { PyThreadState *tstate = _PyThreadState_GET(); if (PySys_Audit("sys.set_asyncgen_hook_finalizer", NULL) < 0) { - return; + return -1; } Py_XINCREF(finalizer); Py_XSETREF(tstate->async_gen_finalizer, finalizer); + return 0; } PyObject * -- cgit v1.2.1