From 83d52044ae4def1e8611a4b1b9263b850ca5c458 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Mon, 14 Dec 2020 22:40:40 +0100 Subject: bpo-42639: Cleanup atexitmodule.c (GH-23770) * Rename "atexitmodule_state" to "struct atexit_state". * Rename "modstate" to "state". * Rename "self" parameter to "module". * test_atexit uses textwrap.dedent(). * Remove _Py_PyAtExit() function: inline it into atexit_exec(). * PyInterpreterState: rename pyexitfunc to atexit_func, rename pyexitmodule to atexit_module. --- Python/pylifecycle.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) (limited to 'Python/pylifecycle.c') diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c index 6a705b4d2b..54a35a27ec 100644 --- a/Python/pylifecycle.c +++ b/Python/pylifecycle.c @@ -2634,26 +2634,14 @@ Py_ExitStatusException(PyStatus status) /* Clean up and exit */ -/* For the atexit module. */ -void _Py_PyAtExit(void (*func)(PyObject *), PyObject *module) -{ - PyInterpreterState *is = _PyInterpreterState_GET(); - - /* Guard against API misuse (see bpo-17852) */ - assert(is->pyexitfunc == NULL || is->pyexitfunc == func); - - is->pyexitfunc = func; - is->pyexitmodule = module; -} - static void call_py_exitfuncs(PyThreadState *tstate) { PyInterpreterState *interp = tstate->interp; - if (interp->pyexitfunc == NULL) + if (interp->atexit_func == NULL) return; - (*interp->pyexitfunc)(interp->pyexitmodule); + interp->atexit_func(interp->atexit_module); _PyErr_Clear(tstate); } -- cgit v1.2.1