From: Stefan Krah Date: Tue, 27 Mar 2012 09:49:21 +0000 (+0200) Subject: Issue #11826: Fix memory leak in atexitmodule. X-Git-Tag: v3.3.0a2~34 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=650365b1633891fb8281b375e54ae13201e05a73;p=python Issue #11826: Fix memory leak in atexitmodule. --- diff --git a/Modules/atexitmodule.c b/Modules/atexitmodule.c index 1ee7ead05f..f68d8047ed 100644 --- a/Modules/atexitmodule.c +++ b/Modules/atexitmodule.c @@ -211,6 +211,14 @@ atexit_clear(PyObject *self, PyObject *unused) Py_RETURN_NONE; } +static void +atexit_free(PyObject *m) +{ + atexitmodule_state *modstate; + modstate = GET_ATEXIT_STATE(m); + PyMem_Free(modstate->atexit_callbacks); +} + PyDoc_STRVAR(atexit_unregister__doc__, "unregister(func) -> None\n\ \n\ @@ -275,7 +283,7 @@ static struct PyModuleDef atexitmodule = { NULL, NULL, NULL, - NULL + (freefunc)atexit_free }; PyMODINIT_FUNC