From ce4a52cd0c39a1d04dfc2e90ffc098b03a194a1c Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Wed, 27 Jan 1999 18:04:05 +0000 Subject: initerrno(): Nailed a not-so-tiny memory leak. The de dictionary is put into the module dict, but is never DECREF'd in this function, so it and all its contents leak. --- Modules/errnomodule.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Modules/errnomodule.c b/Modules/errnomodule.c index f18a6555ba..ee0aaf1d92 100644 --- a/Modules/errnomodule.c +++ b/Modules/errnomodule.c @@ -101,7 +101,7 @@ initerrno() m = Py_InitModule3("errno", errno_methods, errno__doc__); d = PyModule_GetDict(m); de = PyDict_New(); - if (de == NULL || PyDict_SetItemString(d,"errorcode",de)) + if (de == NULL || PyDict_SetItemString(d, "errorcode", de)) Py_FatalError("can't initialize errno module"); /* Macro so I don't have to edit each and every line below... */ @@ -824,4 +824,5 @@ initerrno() inscode(d, ds, de, "WSAN", WSAN, "Error WSAN"); #endif + Py_DECREF(de); } -- cgit v1.2.1